Another problem with permutations in alpha and possibly also in fv
authorChristian Urban <urbanc@in.tum.de>
Tue, 02 Mar 2010 18:57:26 +0100
changeset 1320 447666754176
parent 1319 d793ce9cd06f
child 1321 bfd9af005e23
Another problem with permutations in alpha and possibly also in fv
Nominal/Test.thy
--- a/Nominal/Test.thy	Tue Mar 02 18:48:20 2010 +0100
+++ b/Nominal/Test.thy	Tue Mar 02 18:57:26 2010 +0100
@@ -2,6 +2,20 @@
 imports "Parser"
 begin
 
+text {* weirdo example from Peter Sewell's bestiary *}
+
+nominal_datatype weird =
+  WBind x::"name" y::"name" p1::"weird" p2::"weird" p3::"weird"
+    bind x in p1, bind x in p2, bind y in p2, bind y in p3
+| WVar "name"
+| WPair "weird" "weird"
+
+thm alpha_weird_raw.intros[no_vars]
+thm fv_weird_raw.simps[no_vars]
+(* Potential problem: Is it correct that in the fv-function 
+the first two terms are created? Should be ommitted. Also
+something wrong with the permutations. *)
+
 text {* example 1 *}
 
 nominal_datatype lam =
@@ -46,6 +60,9 @@
 | "f (PS x) = {atom x}"
 | "f (PD x y) = {atom x, atom y}"
 
+
+thm alpha_trm'_raw_alpha_pat'_raw.intros[no_vars]
+thm fv_trm'_raw_fv_pat'_raw.simps[no_vars]
 thm f_raw.simps
 
 nominal_datatype trm0 =