diff -r 999300935e9c -r e8f1fa50329a QuotMain.thy --- a/QuotMain.thy Thu Sep 24 09:09:46 2009 +0200 +++ b/QuotMain.thy Thu Sep 24 11:38:20 2009 +0200 @@ -856,7 +856,7 @@ ML {* fun mk_rep_abs x = @{term REP_fset} $ (@{term ABS_fset} $ x) - val consts = [@{const_name "Nil"}, @{const_name "append"}, @{const_name "Cons"}, @{const_name "membship"}] + val consts = [@{const_name "Nil"}, @{const_name "append"}, @{const_name "Cons"}, @{const_name "membship"}, @{const_name "card1"}] *} ML {* @@ -870,6 +870,7 @@ in if type_of t = lifted_type then mk_rep_abs t else t end + handle TYPE _ => t fun build_aux (Abs (s, t, tr)) = (Abs (s, t, build_aux tr)) | build_aux (f $ a) = let @@ -1084,7 +1085,15 @@ val cgoal = cterm_of @{theory} goal val cgoal2 = Thm.rhs_of (MetaSimplifier.rewrite false fset_defs_sym cgoal) *} - +ML fset_defs_sym +prove {* (Thm.term_of cgoal2) *} + apply (tactic {* LocalDefs.unfold_tac @{context} fset_defs *} ) + apply (atomize(full)) + apply (rule_tac trueprop_cong) + apply (atomize(full)) + apply (tactic {* foo_tac' @{context} 1 *}) + apply (rule_tac f = "P" in arg_cong) + sorry thm card1_suc @@ -1098,6 +1107,8 @@ val cgoal = cterm_of @{theory} goal val cgoal2 = Thm.rhs_of (MetaSimplifier.rewrite false fset_defs_sym cgoal) *} +prove {* (Thm.term_of cgoal2) *} + apply (tactic {* LocalDefs.unfold_tac @{context} fset_defs *} )