# HG changeset patch # User Cezary Kaliszyk # Date 1265732648 -3600 # Node ID ad2feded2a8cd8c05413d8ea17a7088e1606a33b # Parent 84d666f9faceb48dbf9855f948d099c3c97485b2 More about trm6 diff -r 84d666f9face -r ad2feded2a8c Quot/Nominal/Terms.thy --- a/Quot/Nominal/Terms.thy Tue Feb 09 17:05:07 2010 +0100 +++ b/Quot/Nominal/Terms.thy Tue Feb 09 17:24:08 2010 +0100 @@ -1023,6 +1023,11 @@ as "rbv6" +lemma [quot_respect]: + "(op = ===> alpha1 ===> alpha1) permute permute" +apply auto (* eqvt *) +sorry + lemma [quot_respect]:"(alpha6 ===> op =) rbv6 rbv6" apply simp apply clarify apply (erule alpha6.induct) @@ -1030,10 +1035,16 @@ apply simp apply (erule exE) apply (simp add: alpha_gen) -sorry +oops lemma [quot_respect]:"(alpha6 ===> op =) rfv_trm6 rfv_trm6" -sorry +apply simp apply clarify +apply (induct_tac x y rule: alpha6.induct) +apply simp_all +apply (erule exE) +apply (simp add: alpha_gen) +apply (erule conjE)+ +oops lemma [quot_respect]: "(op = ===> alpha6) rVr6 rVr6" @@ -1045,7 +1056,7 @@ apply (rule_tac x="0::perm" in exI) apply (simp add: alpha_gen) (* needs rbv6_rsp *) -sorry +oops instantiation trm6 :: pt begin @@ -1055,9 +1066,22 @@ "permute :: perm \ rtrm6 \ rtrm6" instance +apply default sorry end +lemma +"\x1 = x2; \a b. a = b \ P (Vr6 a) (Vr6 b); + \t1 t2 s1 s2. \t1 = t2; P t1 t2; s1 = s2; P s1 s2\ \ P (Ap6 t1 s1) (Ap6 t2 s2); + \l1 r1 l2 r2. + \pi. (bv6 l1, r1) \gen (\x1 x2. x1 = x2 \ P x1 x2) fv_trm6 pi (bv6 l2, r2) \ + P (Fo6 l1 r1) (Fo6 l2 r2)\ + \ P x1 x2" +unfolding alpha_gen +apply (lifting alpha6.induct[unfolded alpha_gen]) +apply(injection) +sorry + lemma "\\pi. ((bv6 l1, r1) \gen (op =) fv_trm6 pi (bv6 l2, r2))\ \ Fo6 l1 r1 = Fo6 l2 r2" apply (unfold alpha_gen)