Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 0 additions & 15 deletions .github/workflows/build_2021-1.yml

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ jobs:
name: Build Theory
steps:
- uses: actions/checkout@v3
- uses: lexbailey/isabelle-theory-build-github-action@v7
- uses: lexbailey/isabelle-theory-build-github-action@v9
with:
isabelle-version: '2022'
custom-isabelle-url: 'https://github.com/lexbailey/itrees_isabelle_fork/archive/refs/heads/itrees_utp_2022.zip'
depends: 'https://github.com/isabelle-utp/Shallow-Expressions.git@main https://github.com/isabelle-utp/explore-subgoal.git@main'
isabelle-url: 'https://github.com/lexbailey/itrees_isabelle_fork/archive/refs/tags/CyPhyAssure2023.tar.gz'
depends: 'https://github.com/isabelle-utp/Shallow-Expressions.git@main https://github.com/isabelle-utp/explore-subgoal.git@main https://github.com/isabelle-utp/Abstract_Prog_Syntax.git@main'
session-name: 'Interaction_Trees ITree_Simulation ITree_UTP ITree_VCG ITree_RoboChart'
report_url: 'https://isabelle-utp-ci-dashboard.link/submit_job_log'
report_secret: ${{ secrets.DashboardReportKey }}


7 changes: 7 additions & 0 deletions UTP/ITree_Relation.thy
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,13 @@ lemma promote_rel [itree_pred]:
by (auto elim!: trace_to_bindE bind_RetE' simp add: itree_pred_def retvals_def promote_itree_def lens_override_def)
(metis bind_Ret trace_to_bind_left)

lemma itree_pred_match [simp]:
"match_itree (e)\<^sub>e (case_option P Q) = (if e = None then P else (let v \<leftarrow> the e in Q v) fi)"
by (simp add: match_itree_def let_itree_def cond_itree_def option.case_eq_if fun_eq_iff)

lemma let_itree_pred [itree_pred]: "\<lbrakk>let_itree e P\<rbrakk>\<^sub>p = (\<lambda> (s, s'). let v = e s in \<lbrakk>P v\<rbrakk>\<^sub>p (s, s'))"
by (simp add: let_itree_def itree_pred_def)

ML_file \<open>Lens_Rel_Utils.ML\<close>

method rename_rel_alpha_vars = tactic \<open> Lens_Rel_Utils.rename_rel_alpha_vars \<close>
Expand Down