Hets - the Heterogeneous Tool Set

Copyright(c) Dominik Dietrich DFKI Bremen 2010
LicenseGPLv2 or higher, see LICENSE.txt
Maintainerdominik.dietrich@dfki.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe

CSL.Morphism

Description

this file defines morhpisms for the reduce logic. A morphism is a mapping of operator symbols

Synopsis

Documentation

data Morphism Source #

The datatype for morphisms in reduce logic as maps of sets

Constructors

Morphism 

Fields

Instances

Eq Morphism Source # 

Methods

(==) :: Morphism -> Morphism -> Bool

(/=) :: Morphism -> Morphism -> Bool

Data Morphism Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Morphism -> c Morphism

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Morphism

toConstr :: Morphism -> Constr

dataTypeOf :: Morphism -> DataType

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Morphism)

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Morphism)

gmapT :: (forall b. Data b => b -> b) -> Morphism -> Morphism

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Morphism -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Morphism -> r

gmapQ :: (forall d. Data d => d -> u) -> Morphism -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Morphism -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Morphism -> m Morphism

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Morphism -> m Morphism

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Morphism -> m Morphism

Ord Morphism Source # 

Methods

compare :: Morphism -> Morphism -> Ordering

(<) :: Morphism -> Morphism -> Bool

(<=) :: Morphism -> Morphism -> Bool

(>) :: Morphism -> Morphism -> Bool

(>=) :: Morphism -> Morphism -> Bool

max :: Morphism -> Morphism -> Morphism

min :: Morphism -> Morphism -> Morphism

Show Morphism Source # 

Methods

showsPrec :: Int -> Morphism -> ShowS

show :: Morphism -> String

showList :: [Morphism] -> ShowS

Pretty Morphism Source # 
Sentences CSL CMD Sign Morphism Symbol Source #

Instance of Sentences for reduce logic

StaticAnalysis CSL BASIC_SPEC CMD SYMB_ITEMS SYMB_MAP_ITEMS Sign Morphism Symbol Symbol Source #

Static Analysis for reduce logic

Methods

basic_analysis :: CSL -> Maybe ((BASIC_SPEC, Sign, GlobalAnnos) -> Result (BASIC_SPEC, ExtSign Sign Symbol, [Named CMD])) Source #

sen_analysis :: CSL -> Maybe ((BASIC_SPEC, Sign, CMD) -> Result CMD) Source #

extBasicAnalysis :: CSL -> IRI -> LibName -> BASIC_SPEC -> Sign -> GlobalAnnos -> Result (BASIC_SPEC, ExtSign Sign Symbol, [Named CMD]) Source #

stat_symb_map_items :: CSL -> Sign -> Maybe Sign -> [SYMB_MAP_ITEMS] -> Result (EndoMap Symbol) Source #

stat_symb_items :: CSL -> Sign -> [SYMB_ITEMS] -> Result [Symbol] Source #

convertTheory :: CSL -> Maybe ((Sign, [Named CMD]) -> BASIC_SPEC) Source #

ensures_amalgamability :: CSL -> ([CASLAmalgOpt], Gr Sign (Int, Morphism), [(Int, Morphism)], Gr String String) -> Result Amalgamates Source #

quotient_term_algebra :: CSL -> Morphism -> [Named CMD] -> Result (Sign, [Named CMD]) Source #

signature_colimit :: CSL -> Gr Sign (Int, Morphism) -> Result (Sign, Map Int Morphism) Source #

qualify :: CSL -> SIMPLE_ID -> LibName -> Morphism -> Sign -> Result (Morphism, [Named CMD]) Source #

symbol_to_raw :: CSL -> Symbol -> Symbol Source #

id_to_raw :: CSL -> Id -> Symbol Source #

matches :: CSL -> Symbol -> Symbol -> Bool Source #

empty_signature :: CSL -> Sign Source #

add_symb_to_sign :: CSL -> Sign -> Symbol -> Result Sign Source #

signature_union :: CSL -> Sign -> Sign -> Result Sign Source #

signatureDiff :: CSL -> Sign -> Sign -> Result Sign Source #

intersection :: CSL -> Sign -> Sign -> Result Sign Source #

final_union :: CSL -> Sign -> Sign -> Result Sign Source #

morphism_union :: CSL -> Morphism -> Morphism -> Result Morphism Source #

is_subsig :: CSL -> Sign -> Sign -> Bool Source #

subsig_inclusion :: CSL -> Sign -> Sign -> Result Morphism Source #

generated_sign :: CSL -> Set Symbol -> Sign -> Result Morphism Source #

cogenerated_sign :: CSL -> Set Symbol -> Sign -> Result Morphism Source #

induced_from_morphism :: CSL -> EndoMap Symbol -> Sign -> Result Morphism Source #

induced_from_to_morphism :: CSL -> EndoMap Symbol -> ExtSign Sign Symbol -> ExtSign Sign Symbol -> Result Morphism Source #

is_transportable :: CSL -> Morphism -> Bool Source #

is_injective :: CSL -> Morphism -> Bool Source #

theory_to_taxonomy :: CSL -> TaxoGraphKind -> MMiSSOntology -> Sign -> [Named CMD] -> Result MMiSSOntology Source #

corresp2th :: CSL -> String -> Bool -> Sign -> Sign -> [SYMB_ITEMS] -> [SYMB_ITEMS] -> EndoMap Symbol -> EndoMap Symbol -> REL_REF -> Result (Sign, [Named CMD], Sign, Sign, EndoMap Symbol, EndoMap Symbol) Source #

equiv2cospan :: CSL -> Sign -> Sign -> [SYMB_ITEMS] -> [SYMB_ITEMS] -> Result (Sign, Sign, Sign, EndoMap Symbol, EndoMap Symbol) Source #

extract_module :: CSL -> [IRI] -> (Sign, [Named CMD]) -> Result (Sign, [Named CMD]) Source #

Logic CSL () BASIC_SPEC CMD SYMB_ITEMS SYMB_MAP_ITEMS Sign Morphism Symbol Symbol [EXPRESSION] Source #

Instance of Logic for reduce logc

Methods

parse_basic_sen :: CSL -> Maybe (BASIC_SPEC -> AParser st CMD) Source #

stability :: CSL -> Stability Source #

data_logic :: CSL -> Maybe AnyLogic Source #

top_sublogic :: CSL -> () Source #

all_sublogics :: CSL -> [()] Source #

bottomSublogic :: CSL -> Maybe () Source #

sublogicDimensions :: CSL -> [[()]] Source #

parseSublogic :: CSL -> String -> Maybe () Source #

proj_sublogic_epsilon :: CSL -> () -> Sign -> Morphism Source #

provers :: CSL -> [Prover Sign CMD Morphism () [EXPRESSION]] Source #

default_prover :: CSL -> String Source #

cons_checkers :: CSL -> [ConsChecker Sign CMD () Morphism [EXPRESSION]] Source #

conservativityCheck :: CSL -> [ConservativityChecker Sign CMD Morphism] Source #

empty_proof_tree :: CSL -> [EXPRESSION] Source #

syntaxTable :: CSL -> Sign -> Maybe SyntaxTable Source #

omdoc_metatheory :: CSL -> Maybe OMCD Source #

export_symToOmdoc :: CSL -> NameMap Symbol -> Symbol -> String -> Result TCElement Source #

export_senToOmdoc :: CSL -> NameMap Symbol -> CMD -> Result TCorOMElement Source #

export_theoryToOmdoc :: CSL -> SigMap Symbol -> Sign -> [Named CMD] -> Result [TCElement] Source #

omdocToSym :: CSL -> SigMapI Symbol -> TCElement -> String -> Result Symbol Source #

omdocToSen :: CSL -> SigMapI Symbol -> TCElement -> String -> Result (Maybe (Named CMD)) Source #

addOMadtToTheory :: CSL -> SigMapI Symbol -> (Sign, [Named CMD]) -> [[OmdADT]] -> Result (Sign, [Named CMD]) Source #

addOmdocToTheory :: CSL -> SigMapI Symbol -> (Sign, [Named CMD]) -> [TCElement] -> Result (Sign, [Named CMD]) Source #

pretty :: Pretty a => a -> Doc Source #

idMor :: Sign -> Morphism Source #

Constructs an id-morphism

composeMor :: Morphism -> Morphism -> Result Morphism Source #

calculates the composition of two morhpisms f:X->Y, g:Y->Z

inclusionMap :: Sign -> Sign -> Morphism Source #

constructs the inclusion map for a given signature

mapSentence :: Morphism -> CMD -> Result CMD Source #

sentence translation along signature morphism here just the renaming of formulae

applyMap :: Map Id Id -> Id -> Id Source #

Application function for propMaps

applyMorphism :: Morphism -> Id -> Id Source #

Application funtion for morphisms