src/HOL/Nominal/Nominal.thy
changeset 19772 45897b49fdd2
parent 19771 b4a0da62126e
child 19834 2290cc06049b
equal deleted inserted replaced
19771:b4a0da62126e 19772:45897b49fdd2
   983 done
   983 done
   984 
   984 
   985 section {* further lemmas for permutation types *}
   985 section {* further lemmas for permutation types *}
   986 (*==============================================*)
   986 (*==============================================*)
   987 
   987 
   988 lemma perm_diff:
       
   989   fixes X::"'a set"
       
   990   and   Y::"'a set"
       
   991   and   pi::"'x prm"
       
   992   assumes pt: "pt TYPE('a) TYPE('x)"
       
   993   and     at: "at TYPE('x)"
       
   994   shows "pi \<bullet> (X - Y) = (pi \<bullet> X) - (pi \<bullet> Y)"
       
   995   by (auto simp add: perm_set_def pt_bij[OF pt, OF at])
       
   996 
       
   997 lemma pt_rev_pi:
   988 lemma pt_rev_pi:
   998   fixes pi :: "'x prm"
   989   fixes pi :: "'x prm"
   999   and   x  :: "'a"
   990   and   x  :: "'a"
  1000   assumes pt: "pt TYPE('a) TYPE('x)"
   991   assumes pt: "pt TYPE('a) TYPE('x)"
  1001   and     at: "at TYPE('x)"
   992   and     at: "at TYPE('x)"
  1168   fix x::"'a"
  1159   fix x::"'a"
  1169   assume a: "X\<subseteq>Y"
  1160   assume a: "X\<subseteq>Y"
  1170   and    "x\<in>(pi\<bullet>X)"
  1161   and    "x\<in>(pi\<bullet>X)"
  1171   thus "x\<in>(pi\<bullet>Y)" by (force simp add: pt_set_bij1a[OF pt, OF at])
  1162   thus "x\<in>(pi\<bullet>Y)" by (force simp add: pt_set_bij1a[OF pt, OF at])
  1172 qed
  1163 qed
       
  1164 
       
  1165 lemma pt_set_diff_eqvt:
       
  1166   fixes X::"'a set"
       
  1167   and   Y::"'a set"
       
  1168   and   pi::"'x prm"
       
  1169   assumes pt: "pt TYPE('a) TYPE('x)"
       
  1170   and     at: "at TYPE('x)"
       
  1171   shows "pi \<bullet> (X - Y) = (pi \<bullet> X) - (pi \<bullet> Y)"
       
  1172   by (auto simp add: perm_set_def pt_bij[OF pt, OF at])
       
  1173 
  1173 
  1174 
  1174 -- "some helper lemmas for the pt_perm_supp_ineq lemma"
  1175 -- "some helper lemmas for the pt_perm_supp_ineq lemma"
  1175 lemma Collect_permI: 
  1176 lemma Collect_permI: 
  1176   fixes pi :: "'x prm"
  1177   fixes pi :: "'x prm"
  1177   and   x  :: "'a"
  1178   and   x  :: "'a"