CASL2CspCASL.hs revision ad270004874ce1d0697fb30d7309f180553bb315
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder{- |
c63ebf815c8a874525cf18670ad74847f7fc7b26Christian MaederModule : $Header$
456238178f89e5a3de2988ee6c8af924297d52d9Christian MaederCopyright : (c) Till Mossakowski and Uni Bremen 2003
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederLicense : similar to LGPL, see HetCATS/LICENSE.txt or LIZENZ.txt
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederMaintainer : M.Roggenbach@swansea.ac.uk
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederStability : provisional
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederPortability : non-portable (imports Logic.Logic)
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederThe embedding comorphism from CASL to CspCASL.
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder-}
f2f9df2e17e70674f0bf426ed1763c973ee4cde0Christian Maeder
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maedermodule Comorphisms.CASL2CspCASL where
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maederimport Logic.Logic
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maederimport Logic.Comorphism
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maederimport qualified Data.Map as Map
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettich
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettich-- CASL
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettichimport CASL.Logic_CASL
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettichimport CASL.Sublogic as SL
a737caf82de97c1907027c03e4b4509eb492b4b8Christian Maederimport CASL.Sign
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maederimport CASL.AS_Basic_CASL
68d10d143f29fcff3c637ba24f90e983995ceae6Christian Maederimport CASL.Morphism
96646aed2ae087b942ae23f15bbe729a8f7c43d3Christian Maeder
01e383014b555bbcf639c0ca60c5810b3eff83c0Christian Maeder-- CspCASL
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowskiimport CspCASL.Logic_CspCASL
9dac90ec2be2a72e03893095461960d483fe2fc2Christian Maederimport CspCASL.AS_CspCASL (BASIC_CSP_CASL_SPEC (..))
5e5d3e82af3bc2834f8718a52d9f45da80220273Dominik Lueckeimport CspCASL.SignCSP
124c859ba4741d5e36d5d98634886b430b7af093Christian Maeder
ce8b15da31cd181b7e90593cbbca98f47eda29d6Till Mossakowski-- | The identity of the comorphism
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maederdata CASL2CspCASL = CASL2CspCASL deriving (Show)
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maederinstance Language CASL2CspCASL -- default definition is okay
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
a1ed34933c266ce85066acb0d7b20c90cb8eb213Christian Maederinstance Comorphism CASL2CspCASL
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder CASL CASL_Sublogics
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder CASLSign
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder CASLMor
4d56f2fa72e4aec20eb827c11ed49c8cbb7014bdChristian Maeder Symbol RawSymbol ()
4cb215739e9ab13447fa21162482ebe485b47455Christian Maeder CspCASL ()
8ef75f1cc0437656bf622cec5ac9e8ea221da8f2Christian Maeder BASIC_CSP_CASL_SPEC () SYMB_ITEMS SYMB_MAP_ITEMS
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich CSPSign
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder CSPMorphism
74eed04be26f549d2f7ca35c370e1c03879b28b1Christian Maeder () () () where
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder sourceLogic CASL2CspCASL = CASL
8d97ef4f234681b11bb5924bd4d03adef858d2d2Christian Maeder sourceSublogic CASL2CspCASL = SL.top
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder targetLogic CASL2CspCASL = CspCASL
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder mapSublogic CASL2CspCASL _ = ()
e593b89bfd4952698dc37feced21cefe869d87a2Christian Maeder map_theory CASL2CspCASL = return . simpleTheoryMapping mapSig (const ())
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder map_morphism CASL2CspCASL = return . mapMor
f38b3687c5558128515e34fb85d8b466d22dc300Christian Maeder map_sentence CASL2CspCASL _sig = return . (const ()) -- toSentence sig
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder map_symbol = errMapSymbol -- Set.singleton . mapSym
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder
1aee4aaddde105264c1faf394d88e302c05094ffChristian MaedermapSig :: CASLSign -> CSPSign
1aee4aaddde105264c1faf394d88e302c05094ffChristian MaedermapSig sign =
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder (emptySign emptyCSPAddSign) {sortSet = sortSet sign
f041c9a6bda23de33a38490e35b831ae18d96b45Christian Maeder , sortRel = sortRel sign
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder , opMap = opMap sign
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder , assocOps = assocOps sign
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder , predMap = predMap sign }
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder
c3053d57f642ca507cdf79512e604437c4546cb9Christian MaedermapMor :: CASLMor -> CSPMorphism
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian MaedermapMor m = Morphism {msource = mapSig $ msource m
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder , mtarget = mapSig $ mtarget m
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder , sort_map = sort_map m
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder , fun_map = fun_map m
d0279930f87bf39843e0bd2992a4789322662144Christian Maeder , pred_map = pred_map m
8be81a0578b59f08641da7fad1479e1f9e83c6e9Kristina Sojakova , extended_map =
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder CSPAddMorphism { channelMap = Map.empty,
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder processMap = Map.empty
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder }}
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder