Logic_HasCASL.hs revision b49276c9f50038e0bd499ad49f7bd6444566a834
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder{-# OPTIONS -fno-warn-missing-methods #-}
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder Authors: C. Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder Here is the place where the class Logic is instantiated for HasCASL.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder Also the instances for Syntax an Category.
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder - writing real functions
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowskiimport CASL.AS_Basic_CASL(SYMB_ITEMS, SYMB_MAP_ITEMS)
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maederimport Common.AnnoState(emptyAnnos)
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder-- a dummy datatype for the LogicGraph and for identifying the right
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maederdata HasCASL = HasCASL deriving (Show)
ad270004874ce1d0697fb30d7309f180553bb315Christian Maederinstance Language HasCASL -- default definition is okay
4cb215739e9ab13447fa21162482ebe485b47455Christian Maedertype Sign = Env
8ef75f1cc0437656bf622cec5ac9e8ea221da8f2Christian Maedertype Morphism = ()
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettichtype HasCASL_Sublogics = ()
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maedertype Sentence = Formula
74eed04be26f549d2f7ca35c370e1c03879b28b1Christian Maedertype Symbol = ()
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maedertype RawSymbol = ()
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian Maeder-- abstract syntax, parsing (and printing)
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian MaederbasicSpecTc :: TyCon
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian MaederbasicSpecTc = mkTyCon "HasCASL.As.BasicSpec"
e593b89bfd4952698dc37feced21cefe869d87a2Christian MaedersignTc :: TyCon
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian MaedersignTc = mkTyCon "HasCASL.Le.Env"
f38b3687c5558128515e34fb85d8b466d22dc300Christian MaedersentenceTc :: TyCon
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaedersentenceTc = mkTyCon "HasCASL.As.Formula"
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maederinstance Typeable BasicSpec where
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder typeOf _ = mkAppTy basicSpecTc []
f041c9a6bda23de33a38490e35b831ae18d96b45Christian Maederinstance Typeable Sign where
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder typeOf _ = mkAppTy signTc []
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maederinstance Typeable Sentence where
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder typeOf _ = mkAppTy sentenceTc []
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maederinstance Syntax HasCASL BasicSpec
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder SYMB_ITEMS SYMB_MAP_ITEMS
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder parse_basic_spec HasCASL = Just(toParseFun basicSpec emptyAnnos)
05a62e84edac8c64de04f8349dee418598d216b9Christian Maeder parse_symb_items HasCASL = Just(toParseFun symbItems ())
05a62e84edac8c64de04f8349dee418598d216b9Christian Maeder parse_symb_map_items HasCASL = Just(toParseFun symbMapItems ())
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maederinstance Category HasCASL Sign Morphism
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maederinstance Sentences HasCASL Sentence () Sign Morphism Symbol
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maederinstance StaticAnalysis HasCASL BasicSpec Sentence ()
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder SYMB_ITEMS SYMB_MAP_ITEMS
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder Symbol RawSymbol
8cacad2a09782249243b80985f28e9387019fe40Christian Maederinstance Logic HasCASL HasCASL_Sublogics
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder BasicSpec Sentence SYMB_ITEMS SYMB_MAP_ITEMS
8a28707e9155465c6f2236a06eac6580a65c7025Christian Maeder Symbol RawSymbol ()