Skip to content

Commit

Permalink
Automate fixpoint proofs until alpha_FVars
Browse files Browse the repository at this point in the history
  • Loading branch information
jvanbruegge committed Oct 29, 2024
1 parent 6df6526 commit d2413b7
Show file tree
Hide file tree
Showing 6 changed files with 851 additions and 374 deletions.
2 changes: 0 additions & 2 deletions Tools/binder_inductive.ML
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ fun long_name ctxt name =
Const (s, _) => s
| _ => error ("Undeclared constant: " ^ quote name)

datatype ('a, 'b) either = Inl of 'a | Inr of 'b

fun collapse (Inl x) = x
| collapse (Inr x) = x

Expand Down
441 changes: 318 additions & 123 deletions Tools/mrbnf_fp.ML

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions Tools/mrbnf_util.ML
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ signature MRBNF_UTIL =
sig
include BNF_UTIL

datatype ('a, 'b) either = Inl of 'a | Inr of 'b

val filter_like: 'a list -> ('a -> bool) -> 'b list -> 'b list
val cond_keep: 'a list -> bool list -> 'a list
val cond_interlace: 'a list -> 'a list -> bool list -> 'a list
Expand Down Expand Up @@ -71,6 +73,8 @@ struct

open BNF_Util

datatype ('a, 'b) either = Inl of 'a | Inr of 'b

fun strip_ex (Const (@{const_name Ex}, _) $ Abs (x, T, t)) = apfst (cons (x, T)) (strip_ex t)
| strip_ex t = ([], t)

Expand Down
Loading

0 comments on commit d2413b7

Please sign in to comment.