Quot/Examples/FSet.thy
changeset 705 f51c6069cd17
parent 697 57944c1ef728
child 758 3104d62e7a16
--- a/Quot/Examples/FSet.thy	Fri Dec 11 08:28:41 2009 +0100
+++ b/Quot/Examples/FSet.thy	Fri Dec 11 11:08:58 2009 +0100
@@ -27,18 +27,18 @@
   done
 
 quotient_def
-  EMPTY :: "EMPTY :: 'a fset"
-where
+   "EMPTY :: 'a fset"
+as
   "[]::'a list"
 
 quotient_def
-  INSERT :: "INSERT :: 'a \<Rightarrow> 'a fset \<Rightarrow> 'a fset"
-where
+   "INSERT :: 'a \<Rightarrow> 'a fset \<Rightarrow> 'a fset"
+as
   "op #"
 
 quotient_def
-  FUNION :: "FUNION :: 'a fset \<Rightarrow> 'a fset \<Rightarrow> 'a fset"
-where
+   "FUNION :: 'a fset \<Rightarrow> 'a fset \<Rightarrow> 'a fset"
+as
   "op @"
 
 fun
@@ -48,8 +48,8 @@
 | card1_cons: "(card1 (x # xs)) = (if (x mem xs) then (card1 xs) else (Suc (card1 xs)))"
 
 quotient_def
-  CARD :: "CARD :: 'a fset \<Rightarrow> nat"
-where
+   "CARD :: 'a fset \<Rightarrow> nat"
+as
   "card1"
 
 (* text {*
@@ -111,18 +111,18 @@
   done
 
 quotient_def
-  IN :: "IN :: 'a \<Rightarrow> 'a fset \<Rightarrow> bool"
-where
+   "IN :: 'a \<Rightarrow> 'a fset \<Rightarrow> bool"
+as
   "op mem"
 
 quotient_def
-  FOLD :: "FOLD :: ('a \<Rightarrow> 'a \<Rightarrow> 'a) \<Rightarrow> ('b \<Rightarrow> 'a) \<Rightarrow> 'a \<Rightarrow> 'b fset \<Rightarrow> 'a"
-where
+   "FOLD :: ('a \<Rightarrow> 'a \<Rightarrow> 'a) \<Rightarrow> ('b \<Rightarrow> 'a) \<Rightarrow> 'a \<Rightarrow> 'b fset \<Rightarrow> 'a"
+as
   "fold1"
 
 quotient_def
-  fmap::"fmap :: ('a \<Rightarrow> 'b) \<Rightarrow> 'a fset \<Rightarrow> 'b fset"
-where
+  "fmap :: ('a \<Rightarrow> 'b) \<Rightarrow> 'a fset \<Rightarrow> 'b fset"
+as
   "map"
 
 lemma mem_rsp:
@@ -275,13 +275,13 @@
   by (rule equivp_list_eq)
 
 quotient_def
-  EMPTY2 :: "EMPTY2 :: 'a fset2"
-where
+   "EMPTY2 :: 'a fset2"
+as
   "[]::'a list"
 
 quotient_def
-  INSERT2 :: "INSERT2 :: 'a \<Rightarrow> 'a fset2 \<Rightarrow> 'a fset2"
-where
+   "INSERT2 :: 'a \<Rightarrow> 'a fset2 \<Rightarrow> 'a fset2"
+as
   "op #"
 
 lemma "P (x :: 'a fset2) (EMPTY :: 'c fset) \<Longrightarrow> (\<And>e t. P x t \<Longrightarrow> P x (INSERT e t)) \<Longrightarrow> P x l"
@@ -293,13 +293,13 @@
 done
 
 quotient_def
-  fset_rec::"fset_rec :: 'a \<Rightarrow> ('b \<Rightarrow> 'b fset \<Rightarrow> 'a \<Rightarrow> 'a) \<Rightarrow> 'b fset \<Rightarrow> 'a"
-where
+  "fset_rec :: 'a \<Rightarrow> ('b \<Rightarrow> 'b fset \<Rightarrow> 'a \<Rightarrow> 'a) \<Rightarrow> 'b fset \<Rightarrow> 'a"
+as
   "list_rec"
 
 quotient_def
-  fset_case::"fset_case :: 'a \<Rightarrow> ('b \<Rightarrow> 'b fset \<Rightarrow> 'a) \<Rightarrow> 'b fset \<Rightarrow> 'a"
-where
+  "fset_case :: 'a \<Rightarrow> ('b \<Rightarrow> 'b fset \<Rightarrow> 'a) \<Rightarrow> 'b fset \<Rightarrow> 'a"
+as
   "list_case"
 
 (* Probably not true without additional assumptions about the function *)