diff -r ace45a11a45e -r bad75618fb82 src/HOL/Nominal/Examples/Class3.thy --- a/src/HOL/Nominal/Examples/Class3.thy Thu Jul 02 08:49:04 2020 +0000 +++ b/src/HOL/Nominal/Examples/Class3.thy Thu Jul 02 12:10:58 2020 +0000 @@ -297,7 +297,7 @@ assumes a: "R[a\c>b] = AndR .M .N e" "c\(a,b,d,e,N,R)" "d\(a,b,c,e,M,R)" "e\a" shows "(\M' N'. R = AndR .M' .N' e \ M'[a\c>b] = M \ N'[a\c>b] = N \ c\N' \ d\M') \ (\M' N'. R = AndR .M' .N' a \ b=e \ M'[a\c>b] = M \ N'[a\c>b] = N \ c\N' \ d\M')" -using a +using a [[simproc del: defined_all]] apply(nominal_induct R avoiding: a b c d e M N rule: trm.strong_induct) apply(auto split: if_splits simp add: trm.inject alpha)[1] apply(auto split: if_splits simp add: trm.inject alpha)[1] @@ -1487,7 +1487,7 @@ assumes a: "R[x\n>y] = OrL (v).M (w).N u" "v\(R,N,u,x,y)" "w\(R,M,u,x,y)" "x\y" shows "(\M' N'. (R = OrL (v).M' (w).N' u) \ M'[x\n>y] = M \ N'[x\n>y] = N) \ (\M' N'. (R = OrL (v).M' (w).N' x) \ y=u \ M'[x\n>y] = M \ N'[x\n>y] = N)" -using a +using a [[simproc del: defined_all]] apply(nominal_induct R avoiding: y x u v w M N rule: trm.strong_induct) apply(auto split: if_splits simp add: fresh_prod fresh_atm abs_fresh alpha trm.inject) apply(rule_tac x="[(name1,v)]\trm1" in exI) @@ -1550,7 +1550,7 @@ assumes a: "R[x\n>y] = ImpL .M (w).N u" "c\(R,N)" "w\(R,M,u,x,y)" "x\y" shows "(\M' N'. (R = ImpL .M' (w).N' u) \ M'[x\n>y] = M \ N'[x\n>y] = N) \ (\M' N'. (R = ImpL .M' (w).N' x) \ y=u \ M'[x\n>y] = M \ N'[x\n>y] = N)" -using a +using a [[simproc del: defined_all]] apply(nominal_induct R avoiding: y x u c w M N rule: trm.strong_induct) apply(auto split: if_splits simp add: fresh_prod fresh_atm abs_fresh alpha trm.inject) apply(rule_tac x="[(coname,c)]\trm1" in exI) @@ -2367,7 +2367,7 @@ and a3: "(x):N \ (\(B)\)" and a4: "SNa N" shows "SNa (Cut .M (x).N)" -using a1 a2 a3 a4 +using a1 a2 a3 a4 [[simproc del: defined_all]] apply(induct B M N arbitrary: a x rule: my_wf_induct_triple''[OF wf_measure_triple]) apply(rule SNaI) apply(drule Cut_a_redu_elim)