Copyright | (c) Till Mossakowski Uni Bremen 2002-2006 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | till@informatik.uni-bremen.de |
Stability | provisional |
Portability | non-portable (via Logic) |
Safe Haskell | None |
Central interface (type class) for logic translations (comorphisms) in Hets These are just collections of functions between (some of) the types of logics.
References: see Logic.hs
Synopsis
- data CompComorphism cid1 cid2 = CompComorphism cid1 cid2
- data InclComorphism lid sublogics
- inclusion_logic :: InclComorphism lid sublogics -> lid
- inclusion_source_sublogic :: InclComorphism lid sublogics -> sublogics
- inclusion_target_sublogic :: InclComorphism lid sublogics -> sublogics
- mkInclComorphism :: (Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree, MonadFail m) => lid -> sublogics -> sublogics -> m (InclComorphism lid sublogics)
- mkIdComorphism :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> sublogics -> InclComorphism lid sublogics
- class (Language cid, Logic lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1, Logic lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2) => Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 | cid -> lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 where
- sourceLogic :: cid -> lid1
- sourceSublogic :: cid -> sublogics1
- sourceSublogicLossy :: cid -> sublogics1
- minSourceTheory :: cid -> Maybe (LibName, String)
- targetLogic :: cid -> lid2
- mapSublogic :: cid -> sublogics1 -> Maybe sublogics2
- map_theory :: cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2])
- mapMarkedTheory :: cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2])
- map_morphism :: cid -> morphism1 -> Result morphism2
- map_sentence :: cid -> sign1 -> sentence1 -> Result sentence2
- map_symbol :: cid -> sign1 -> symbol1 -> Set symbol2
- extractModel :: cid -> sign1 -> proof_tree2 -> Result (sign1, [Named sentence1])
- is_model_transportable :: cid -> Bool
- has_model_expansion :: cid -> Bool
- is_weakly_amalgamable :: cid -> Bool
- constituents :: cid -> [String]
- isInclusionComorphism :: cid -> Bool
- rps :: cid -> Bool
- eps :: cid -> Bool
- isGTC :: cid -> Bool
- targetSublogic :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => cid -> sublogics2
- map_sign :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => cid -> sign1 -> Result (sign2, [Named sentence2])
- wrapMapTheory :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2])
- wrapMapTheoryPossiblyLossy :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => Bool -> cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2])
- mkTheoryMapping :: Monad m => (sign1 -> m (sign2, [Named sentence2])) -> (sign1 -> sentence1 -> m sentence2) -> (sign1, [Named sentence1]) -> m (sign2, [Named sentence2])
- data AnyComorphism = forall cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2.Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => Comorphism cid
- idComorphism :: AnyLogic -> AnyComorphism
- isIdComorphism :: AnyComorphism -> Bool
- isModelTransportable :: AnyComorphism -> Bool
- hasModelExpansion :: AnyComorphism -> Bool
- isEps :: AnyComorphism -> Bool
- isRps :: AnyComorphism -> Bool
- isWeaklyAmalgamable :: AnyComorphism -> Bool
- compComorphism :: MonadFail m => AnyComorphism -> AnyComorphism -> m AnyComorphism
Documentation
data CompComorphism cid1 cid2 Source #
CompComorphism cid1 cid2 |
Instances
Modification MODAL_EMBEDDING (InclComorphism CASL CASL_Sublogics) (CompComorphism CASL2Modal Modal2CASL) CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree Source # | |
(Data cid1, Data cid2) => Data (CompComorphism cid1 cid2) Source # | |
Defined in Logic.Comorphism gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CompComorphism cid1 cid2 -> c (CompComorphism cid1 cid2) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (CompComorphism cid1 cid2) toConstr :: CompComorphism cid1 cid2 -> Constr dataTypeOf :: CompComorphism cid1 cid2 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (CompComorphism cid1 cid2)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (CompComorphism cid1 cid2)) gmapT :: (forall b. Data b => b -> b) -> CompComorphism cid1 cid2 -> CompComorphism cid1 cid2 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CompComorphism cid1 cid2 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CompComorphism cid1 cid2 -> r gmapQ :: (forall d. Data d => d -> u) -> CompComorphism cid1 cid2 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CompComorphism cid1 cid2 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CompComorphism cid1 cid2 -> m (CompComorphism cid1 cid2) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CompComorphism cid1 cid2 -> m (CompComorphism cid1 cid2) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CompComorphism cid1 cid2 -> m (CompComorphism cid1 cid2) | |
(Show cid1, Show cid2) => Show (CompComorphism cid1 cid2) Source # | |
Defined in Logic.Comorphism showsPrec :: Int -> CompComorphism cid1 cid2 -> ShowS show :: CompComorphism cid1 cid2 -> String showList :: [CompComorphism cid1 cid2] -> ShowS | |
(Language cid1, Language cid2) => Language (CompComorphism cid1 cid2) Source # | |
Defined in Logic.Comorphism language_name :: CompComorphism cid1 cid2 -> String Source # description :: CompComorphism cid1 cid2 -> String Source # | |
(Comorphism cid1 lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2, Comorphism cid2 lid4 sublogics4 basic_spec4 sentence4 symb_items4 symb_map_items4 sign4 morphism4 symbol4 raw_symbol4 proof_tree4 lid3 sublogics3 basic_spec3 sentence3 symb_items3 symb_map_items3 sign3 morphism3 symbol3 raw_symbol3 proof_tree3) => Comorphism (CompComorphism cid1 cid2) lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid3 sublogics3 basic_spec3 sentence3 symb_items3 symb_map_items3 sign3 morphism3 symbol3 raw_symbol3 proof_tree3 Source # | |
Defined in Logic.Comorphism sourceLogic :: CompComorphism cid1 cid2 -> lid1 Source # sourceSublogic :: CompComorphism cid1 cid2 -> sublogics1 Source # sourceSublogicLossy :: CompComorphism cid1 cid2 -> sublogics1 Source # minSourceTheory :: CompComorphism cid1 cid2 -> Maybe (LibName, String) Source # targetLogic :: CompComorphism cid1 cid2 -> lid3 Source # mapSublogic :: CompComorphism cid1 cid2 -> sublogics1 -> Maybe sublogics3 Source # map_theory :: CompComorphism cid1 cid2 -> (sign1, [Named sentence1]) -> Result (sign3, [Named sentence3]) Source # mapMarkedTheory :: CompComorphism cid1 cid2 -> (sign1, [Named sentence1]) -> Result (sign3, [Named sentence3]) Source # map_morphism :: CompComorphism cid1 cid2 -> morphism1 -> Result morphism3 Source # map_sentence :: CompComorphism cid1 cid2 -> sign1 -> sentence1 -> Result sentence3 Source # map_symbol :: CompComorphism cid1 cid2 -> sign1 -> symbol1 -> Set symbol3 Source # extractModel :: CompComorphism cid1 cid2 -> sign1 -> proof_tree3 -> Result (sign1, [Named sentence1]) Source # is_model_transportable :: CompComorphism cid1 cid2 -> Bool Source # has_model_expansion :: CompComorphism cid1 cid2 -> Bool Source # is_weakly_amalgamable :: CompComorphism cid1 cid2 -> Bool Source # constituents :: CompComorphism cid1 cid2 -> [String] Source # isInclusionComorphism :: CompComorphism cid1 cid2 -> Bool Source # rps :: CompComorphism cid1 cid2 -> Bool Source # eps :: CompComorphism cid1 cid2 -> Bool Source # isGTC :: CompComorphism cid1 cid2 -> Bool Source # | |
(Modification lid1 cid1 cid2 log1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 log2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 log3 sublogics3 basic_spec3 sentence3 symb_items3 symb_map_items3 sign3 morphism3 symbol3 raw_symbol3 proof_tree3 log4 sublogics4 basic_spec4 sentence4 symb_items4 symb_map_items4 sign4 morphism4 symbol4 raw_symbol4 proof_tree4, Modification lid2 cid3 cid4 log5 sublogics5 basic_spec5 sentence5 symb_items5 symb_map_items5 sign5 morphism5 symbol5 raw_symbol5 proof_tree5 log6 sublogics6 basic_spec6 sentence6 symb_items6 symb_map_items6 sign6 morphism6 symbol6 raw_symbol6 proof_tree6 log7 sublogics7 basic_spec7 sentence7 symb_items7 symb_map_items7 sign7 morphism7 symbol7 raw_symbol7 proof_tree7 log8 sublogics8 basic_spec8 sentence8 symb_items8 symb_map_items8 sign8 morphism8 symbol8 raw_symbol8 proof_tree8, Comorphism (CompComorphism cid1 cid3) log1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 log6 sublogics6 basic_spec6 sentence6 symb_items6 symb_map_items6 sign6 morphism6 symbol6 raw_symbol6 proof_tree6, Comorphism (CompComorphism cid2 cid4) log3 sublogics3 basic_spec3 sentence3 symb_items3 symb_map_items3 sign3 morphism3 symbol3 raw_symbol3 proof_tree3 log8 sublogics8 basic_spec8 sentence8 symb_items8 symb_map_items8 sign8 morphism8 symbol8 raw_symbol8 proof_tree8) => Modification (HorCompModif lid1 lid2) (CompComorphism cid1 cid3) (CompComorphism cid2 cid4) log1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 log6 sublogics6 basic_spec6 sentence6 symb_items6 symb_map_items6 sign6 morphism6 symbol6 raw_symbol6 proof_tree6 log3 sublogics3 basic_spec3 sentence3 symb_items3 symb_map_items3 sign3 morphism3 symbol3 raw_symbol3 proof_tree3 log8 sublogics8 basic_spec8 sentence8 symb_items8 symb_map_items8 sign8 morphism8 symbol8 raw_symbol8 proof_tree8 Source # | |
Defined in Logic.Modification tauSigma :: HorCompModif lid1 lid2 -> sign1 -> Result morphism6 Source # sourceComorphism :: HorCompModif lid1 lid2 -> CompComorphism cid1 cid3 Source # targetComorphism :: HorCompModif lid1 lid2 -> CompComorphism cid2 cid4 Source # |
data InclComorphism lid sublogics Source #
Instances
Modification MODAL_EMBEDDING (InclComorphism CASL CASL_Sublogics) (CompComorphism CASL2Modal Modal2CASL) CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree CASL CASL_Sublogics CASLBasicSpec CASLFORMULA SYMB_ITEMS SYMB_MAP_ITEMS CASLSign CASLMor Symbol RawSymbol ProofTree Source # | |
(Data lid, Data sublogics) => Data (InclComorphism lid sublogics) Source # | |
Defined in Logic.Comorphism gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> InclComorphism lid sublogics -> c (InclComorphism lid sublogics) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (InclComorphism lid sublogics) toConstr :: InclComorphism lid sublogics -> Constr dataTypeOf :: InclComorphism lid sublogics -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (InclComorphism lid sublogics)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (InclComorphism lid sublogics)) gmapT :: (forall b. Data b => b -> b) -> InclComorphism lid sublogics -> InclComorphism lid sublogics gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> InclComorphism lid sublogics -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> InclComorphism lid sublogics -> r gmapQ :: (forall d. Data d => d -> u) -> InclComorphism lid sublogics -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> InclComorphism lid sublogics -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> InclComorphism lid sublogics -> m (InclComorphism lid sublogics) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> InclComorphism lid sublogics -> m (InclComorphism lid sublogics) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> InclComorphism lid sublogics -> m (InclComorphism lid sublogics) | |
(Show lid, Show sublogics) => Show (InclComorphism lid sublogics) Source # | |
Defined in Logic.Comorphism showsPrec :: Int -> InclComorphism lid sublogics -> ShowS show :: InclComorphism lid sublogics -> String showList :: [InclComorphism lid sublogics] -> ShowS | |
(Language lid, Eq sublogics, Show sublogics, SublogicName sublogics) => Language (InclComorphism lid sublogics) Source # | |
Defined in Logic.Comorphism language_name :: InclComorphism lid sublogics -> String Source # description :: InclComorphism lid sublogics -> String Source # | |
Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => Comorphism (InclComorphism lid sublogics) lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree Source # | |
Defined in Logic.Comorphism sourceLogic :: InclComorphism lid sublogics -> lid Source # sourceSublogic :: InclComorphism lid sublogics -> sublogics Source # sourceSublogicLossy :: InclComorphism lid sublogics -> sublogics Source # minSourceTheory :: InclComorphism lid sublogics -> Maybe (LibName, String) Source # targetLogic :: InclComorphism lid sublogics -> lid Source # mapSublogic :: InclComorphism lid sublogics -> sublogics -> Maybe sublogics Source # map_theory :: InclComorphism lid sublogics -> (sign, [Named sentence]) -> Result (sign, [Named sentence]) Source # mapMarkedTheory :: InclComorphism lid sublogics -> (sign, [Named sentence]) -> Result (sign, [Named sentence]) Source # map_morphism :: InclComorphism lid sublogics -> morphism -> Result morphism Source # map_sentence :: InclComorphism lid sublogics -> sign -> sentence -> Result sentence Source # map_symbol :: InclComorphism lid sublogics -> sign -> symbol -> Set symbol Source # extractModel :: InclComorphism lid sublogics -> sign -> proof_tree -> Result (sign, [Named sentence]) Source # is_model_transportable :: InclComorphism lid sublogics -> Bool Source # has_model_expansion :: InclComorphism lid sublogics -> Bool Source # is_weakly_amalgamable :: InclComorphism lid sublogics -> Bool Source # constituents :: InclComorphism lid sublogics -> [String] Source # isInclusionComorphism :: InclComorphism lid sublogics -> Bool Source # rps :: InclComorphism lid sublogics -> Bool Source # eps :: InclComorphism lid sublogics -> Bool Source # isGTC :: InclComorphism lid sublogics -> Bool Source # |
inclusion_logic :: InclComorphism lid sublogics -> lid Source #
inclusion_source_sublogic :: InclComorphism lid sublogics -> sublogics Source #
inclusion_target_sublogic :: InclComorphism lid sublogics -> sublogics Source #
mkInclComorphism :: (Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree, MonadFail m) => lid -> sublogics -> sublogics -> m (InclComorphism lid sublogics) Source #
construction of an inclusion comorphism
mkIdComorphism :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> sublogics -> InclComorphism lid sublogics Source #
construction of an identity comorphism
class (Language cid, Logic lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1, Logic lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2) => Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 | cid -> lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 where Source #
sourceLogic :: cid -> lid1 Source #
sourceSublogic :: cid -> sublogics1 Source #
sourceSublogicLossy :: cid -> sublogics1 Source #
minSourceTheory :: cid -> Maybe (LibName, String) Source #
targetLogic :: cid -> lid2 Source #
mapSublogic :: cid -> sublogics1 -> Maybe sublogics2 Source #
map_theory :: cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2]) Source #
mapMarkedTheory :: cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2]) Source #
map_morphism :: cid -> morphism1 -> Result morphism2 Source #
map_sentence :: cid -> sign1 -> sentence1 -> Result sentence2 Source #
map_symbol :: cid -> sign1 -> symbol1 -> Set symbol2 Source #
extractModel :: cid -> sign1 -> proof_tree2 -> Result (sign1, [Named sentence1]) Source #
is_model_transportable :: cid -> Bool Source #
has_model_expansion :: cid -> Bool Source #
is_weakly_amalgamable :: cid -> Bool Source #
constituents :: cid -> [String] Source #
isInclusionComorphism :: cid -> Bool Source #
Instances
targetSublogic :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => cid -> sublogics2 Source #
map_sign :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => cid -> sign1 -> Result (sign2, [Named sentence2]) Source #
this function is based on map_theory
using no sentences as input
wrapMapTheory :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2]) Source #
wrapMapTheoryPossiblyLossy :: Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => Bool -> cid -> (sign1, [Named sentence1]) -> Result (sign2, [Named sentence2]) Source #
use this function instead of mapMarkedTheory
mkTheoryMapping :: Monad m => (sign1 -> m (sign2, [Named sentence2])) -> (sign1 -> sentence1 -> m sentence2) -> (sign1, [Named sentence1]) -> m (sign2, [Named sentence2]) Source #
data AnyComorphism Source #
Existential type for comorphisms
forall cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2.Comorphism cid lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1 lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2 => Comorphism cid |
Instances
idComorphism :: AnyLogic -> AnyComorphism Source #
compute the identity comorphism for a logic
isIdComorphism :: AnyComorphism -> Bool Source #
Test whether a comporphism is the identity
isModelTransportable :: AnyComorphism -> Bool Source #
Test whether a comorphism is model-transportable
hasModelExpansion :: AnyComorphism -> Bool Source #
Test whether a comorphism has model expansion
isEps :: AnyComorphism -> Bool Source #
Tests whether a comorphism is rps or eps
isRps :: AnyComorphism -> Bool Source #
isWeaklyAmalgamable :: AnyComorphism -> Bool Source #
Test whether a comorphism is weakly amalgamable
compComorphism :: MonadFail m => AnyComorphism -> AnyComorphism -> m AnyComorphism Source #
Compose comorphisms