Copyright | (c) Pascal Schmidt C. Maeder and Uni Bremen 2002-2006 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | Christian.Maeder@dfki.de |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Sublogic analysis for CASL
This module provides the sublogic functions (as required by Logic.hs) for CASL. The functions allow to compute the minimal sublogics needed by a given element, to check whether an item is part of a given sublogic, and to project an element into a given sublogic.
Synopsis
- type CASL_Sublogics = CASL_SL ()
- data CASL_SL a = CASL_SL {
- sub_features :: SubsortingFeatures
- has_part :: Bool
- cons_features :: SortGenerationFeatures
- has_eq :: Bool
- has_pred :: Bool
- which_logic :: CASL_Formulas
- has_empty_sorts :: Bool
- ext_features :: a
- data CASL_Formulas
- data SubsortingFeatures
- data SortGenerationFeatures
- = NoSortGen
- | SortGen {
- emptyMapping :: Bool
- onlyInjConstrs :: Bool
- totality :: SortGenTotality
- data SortGenTotality
- class (Ord l, Show l) => Lattice l where
- has_sub :: CASL_SL a -> Bool
- has_cons :: CASL_SL a -> Bool
- mkTop :: a -> CASL_SL a
- top :: Lattice a => CASL_SL a
- caslTop :: Lattice a => CASL_SL a
- cFol :: Lattice a => CASL_SL a
- fol :: Lattice a => CASL_SL a
- cPrenex :: Lattice a => CASL_SL a
- sublogics_max :: Lattice a => CASL_SL a -> CASL_SL a -> CASL_SL a
- comp_list :: Lattice a => [CASL_SL a] -> CASL_SL a
- bottom :: Lattice a => CASL_SL a
- mkBot :: a -> CASL_SL a
- emptyMapConsFeature :: SortGenerationFeatures
- need_sub :: Lattice a => CASL_SL a
- need_pred :: Lattice a => CASL_SL a
- need_horn :: Lattice a => CASL_SL a
- need_fol :: Lattice a => CASL_SL a
- updExtFeature :: (a -> a) -> CASL_SL a -> CASL_SL a
- sublogics_name :: (a -> String) -> CASL_SL a -> String
- parseSL :: (String -> Maybe (a, String)) -> String -> Maybe (CASL_SL a)
- parseBool :: String -> String -> (Bool, String)
- sublogics_all :: Lattice a => [a] -> [CASL_SL a]
- sDims :: Lattice a => [[a]] -> [[CASL_SL a]]
- sl_sig_items :: Lattice a => (s -> CASL_SL a) -> (f -> CASL_SL a) -> SIG_ITEMS s f -> CASL_SL a
- sl_basic_spec :: Lattice a => (b -> CASL_SL a) -> (s -> CASL_SL a) -> (f -> CASL_SL a) -> BASIC_SPEC b s f -> CASL_SL a
- sl_opkind :: Lattice a => OpKind -> CASL_SL a
- sl_op_type :: Lattice a => OP_TYPE -> CASL_SL a
- sl_op_item :: Lattice a => (f -> CASL_SL a) -> OP_ITEM f -> CASL_SL a
- sl_pred_item :: Lattice a => (f -> CASL_SL a) -> PRED_ITEM f -> CASL_SL a
- sl_sentence :: Lattice a => (f -> CASL_SL a) -> FORMULA f -> CASL_SL a
- sl_term :: Lattice a => (f -> CASL_SL a) -> TERM f -> CASL_SL a
- sl_symb_items :: Lattice a => SYMB_ITEMS -> CASL_SL a
- sl_symb_map_items :: Lattice a => SYMB_MAP_ITEMS -> CASL_SL a
- sl_sign :: Lattice a => (e -> CASL_SL a) -> Sign f e -> CASL_SL a
- sl_morphism :: Lattice a => (e -> CASL_SL a) -> Morphism f e m -> CASL_SL a
- sl_symbol :: Lattice a => Symbol -> CASL_SL a
- pr_basic_spec :: Lattice a => (CASL_SL a -> b -> (Maybe (BASIC_ITEMS b s f), [SORT])) -> (CASL_SL a -> s -> (Maybe (SIG_ITEMS s f), [SORT])) -> (CASL_SL a -> f -> Maybe (FORMULA f)) -> CASL_SL a -> BASIC_SPEC b s f -> BASIC_SPEC b s f
- pr_symb_items :: Lattice a => CASL_SL a -> SYMB_ITEMS -> Maybe SYMB_ITEMS
- pr_symb_map_items :: Lattice a => CASL_SL a -> SYMB_MAP_ITEMS -> Maybe SYMB_MAP_ITEMS
- pr_sign :: CASL_SL a -> Sign f e -> Sign f e
- pr_morphism :: Lattice a => CASL_SL a -> Morphism f e m -> Morphism f e m
- pr_epsilon :: m -> CASL_SL a -> Sign f e -> Morphism f e m
- pr_symbol :: Lattice a => CASL_SL a -> Symbol -> Maybe Symbol
types
type CASL_Sublogics = CASL_SL () Source #
CASL_SL | |
|
Instances
data CASL_Formulas Source #
Atomic | atomic logic |
Horn | positive conditional logic |
GHorn | generalized positive conditional logic |
Prenex | formulas in prenex normal form |
FOL | first-order logic |
SOL | second-order logic |
Instances
Eq CASL_Formulas Source # | |
Defined in CASL.Sublogic (==) :: CASL_Formulas -> CASL_Formulas -> Bool (/=) :: CASL_Formulas -> CASL_Formulas -> Bool | |
Data CASL_Formulas Source # | |
Defined in CASL.Sublogic gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CASL_Formulas -> c CASL_Formulas gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CASL_Formulas toConstr :: CASL_Formulas -> Constr dataTypeOf :: CASL_Formulas -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CASL_Formulas) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CASL_Formulas) gmapT :: (forall b. Data b => b -> b) -> CASL_Formulas -> CASL_Formulas gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CASL_Formulas -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CASL_Formulas -> r gmapQ :: (forall d. Data d => d -> u) -> CASL_Formulas -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CASL_Formulas -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CASL_Formulas -> m CASL_Formulas gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CASL_Formulas -> m CASL_Formulas gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CASL_Formulas -> m CASL_Formulas | |
Ord CASL_Formulas Source # | |
Defined in CASL.Sublogic compare :: CASL_Formulas -> CASL_Formulas -> Ordering (<) :: CASL_Formulas -> CASL_Formulas -> Bool (<=) :: CASL_Formulas -> CASL_Formulas -> Bool (>) :: CASL_Formulas -> CASL_Formulas -> Bool (>=) :: CASL_Formulas -> CASL_Formulas -> Bool max :: CASL_Formulas -> CASL_Formulas -> CASL_Formulas min :: CASL_Formulas -> CASL_Formulas -> CASL_Formulas | |
Show CASL_Formulas Source # | |
Defined in CASL.Sublogic showsPrec :: Int -> CASL_Formulas -> ShowS show :: CASL_Formulas -> String showList :: [CASL_Formulas] -> ShowS | |
Generic CASL_Formulas | |
Defined in CASL.ATC_CASL type Rep CASL_Formulas :: Type -> Type from :: CASL_Formulas -> Rep CASL_Formulas x to :: Rep CASL_Formulas x -> CASL_Formulas | |
FromJSON CASL_Formulas | |
Defined in CASL.ATC_CASL parseJSON :: Value -> Parser CASL_Formulas parseJSONList :: Value -> Parser [CASL_Formulas] | |
ToJSON CASL_Formulas | |
Defined in CASL.ATC_CASL toJSON :: CASL_Formulas -> Value toEncoding :: CASL_Formulas -> Encoding toJSONList :: [CASL_Formulas] -> Value toEncodingList :: [CASL_Formulas] -> Encoding | |
ShATermConvertible CASL_Formulas | |
Defined in CASL.ATC_CASL toShATermAux :: ATermTable -> CASL_Formulas -> IO (ATermTable, Int) toShATermList' :: ATermTable -> [CASL_Formulas] -> IO (ATermTable, Int) fromShATermAux :: Int -> ATermTable -> (ATermTable, CASL_Formulas) fromShATermList' :: Int -> ATermTable -> (ATermTable, [CASL_Formulas]) | |
type Rep CASL_Formulas | |
Defined in CASL.ATC_CASL type Rep CASL_Formulas = D1 ('MetaData "CASL_Formulas" "CASL.Sublogic" "main" 'False) ((C1 ('MetaCons "Atomic" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Horn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GHorn" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Prenex" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "FOL" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SOL" 'PrefixI 'False) (U1 :: Type -> Type)))) |
data SubsortingFeatures Source #
Instances
Eq SubsortingFeatures Source # | |
Defined in CASL.Sublogic (==) :: SubsortingFeatures -> SubsortingFeatures -> Bool (/=) :: SubsortingFeatures -> SubsortingFeatures -> Bool | |
Data SubsortingFeatures Source # | |
Defined in CASL.Sublogic gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SubsortingFeatures -> c SubsortingFeatures gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SubsortingFeatures toConstr :: SubsortingFeatures -> Constr dataTypeOf :: SubsortingFeatures -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SubsortingFeatures) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SubsortingFeatures) gmapT :: (forall b. Data b => b -> b) -> SubsortingFeatures -> SubsortingFeatures gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SubsortingFeatures -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SubsortingFeatures -> r gmapQ :: (forall d. Data d => d -> u) -> SubsortingFeatures -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SubsortingFeatures -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SubsortingFeatures -> m SubsortingFeatures gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SubsortingFeatures -> m SubsortingFeatures gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SubsortingFeatures -> m SubsortingFeatures | |
Ord SubsortingFeatures Source # | |
Defined in CASL.Sublogic compare :: SubsortingFeatures -> SubsortingFeatures -> Ordering (<) :: SubsortingFeatures -> SubsortingFeatures -> Bool (<=) :: SubsortingFeatures -> SubsortingFeatures -> Bool (>) :: SubsortingFeatures -> SubsortingFeatures -> Bool (>=) :: SubsortingFeatures -> SubsortingFeatures -> Bool max :: SubsortingFeatures -> SubsortingFeatures -> SubsortingFeatures min :: SubsortingFeatures -> SubsortingFeatures -> SubsortingFeatures | |
Show SubsortingFeatures Source # | |
Defined in CASL.Sublogic showsPrec :: Int -> SubsortingFeatures -> ShowS show :: SubsortingFeatures -> String showList :: [SubsortingFeatures] -> ShowS | |
Generic SubsortingFeatures | |
Defined in CASL.ATC_CASL type Rep SubsortingFeatures :: Type -> Type from :: SubsortingFeatures -> Rep SubsortingFeatures x to :: Rep SubsortingFeatures x -> SubsortingFeatures | |
FromJSON SubsortingFeatures | |
Defined in CASL.ATC_CASL parseJSON :: Value -> Parser SubsortingFeatures parseJSONList :: Value -> Parser [SubsortingFeatures] | |
ToJSON SubsortingFeatures | |
Defined in CASL.ATC_CASL toJSON :: SubsortingFeatures -> Value toEncoding :: SubsortingFeatures -> Encoding toJSONList :: [SubsortingFeatures] -> Value toEncodingList :: [SubsortingFeatures] -> Encoding | |
ShATermConvertible SubsortingFeatures | |
Defined in CASL.ATC_CASL toShATermAux :: ATermTable -> SubsortingFeatures -> IO (ATermTable, Int) toShATermList' :: ATermTable -> [SubsortingFeatures] -> IO (ATermTable, Int) fromShATermAux :: Int -> ATermTable -> (ATermTable, SubsortingFeatures) fromShATermList' :: Int -> ATermTable -> (ATermTable, [SubsortingFeatures]) | |
type Rep SubsortingFeatures | |
Defined in CASL.ATC_CASL type Rep SubsortingFeatures = D1 ('MetaData "SubsortingFeatures" "CASL.Sublogic" "main" 'False) (C1 ('MetaCons "NoSub" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LocFilSub" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Sub" 'PrefixI 'False) (U1 :: Type -> Type))) |
data SortGenerationFeatures Source #
NoSortGen | |
SortGen | |
|
Instances
Eq SortGenerationFeatures Source # | |
Defined in CASL.Sublogic (==) :: SortGenerationFeatures -> SortGenerationFeatures -> Bool (/=) :: SortGenerationFeatures -> SortGenerationFeatures -> Bool | |
Data SortGenerationFeatures Source # | |
Defined in CASL.Sublogic gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SortGenerationFeatures -> c SortGenerationFeatures gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SortGenerationFeatures toConstr :: SortGenerationFeatures -> Constr dataTypeOf :: SortGenerationFeatures -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SortGenerationFeatures) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SortGenerationFeatures) gmapT :: (forall b. Data b => b -> b) -> SortGenerationFeatures -> SortGenerationFeatures gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SortGenerationFeatures -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SortGenerationFeatures -> r gmapQ :: (forall d. Data d => d -> u) -> SortGenerationFeatures -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SortGenerationFeatures -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SortGenerationFeatures -> m SortGenerationFeatures gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SortGenerationFeatures -> m SortGenerationFeatures gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SortGenerationFeatures -> m SortGenerationFeatures | |
Ord SortGenerationFeatures Source # | |
Defined in CASL.Sublogic compare :: SortGenerationFeatures -> SortGenerationFeatures -> Ordering (<) :: SortGenerationFeatures -> SortGenerationFeatures -> Bool (<=) :: SortGenerationFeatures -> SortGenerationFeatures -> Bool (>) :: SortGenerationFeatures -> SortGenerationFeatures -> Bool (>=) :: SortGenerationFeatures -> SortGenerationFeatures -> Bool max :: SortGenerationFeatures -> SortGenerationFeatures -> SortGenerationFeatures min :: SortGenerationFeatures -> SortGenerationFeatures -> SortGenerationFeatures | |
Show SortGenerationFeatures Source # | |
Defined in CASL.Sublogic showsPrec :: Int -> SortGenerationFeatures -> ShowS show :: SortGenerationFeatures -> String showList :: [SortGenerationFeatures] -> ShowS | |
Generic SortGenerationFeatures | |
Defined in CASL.ATC_CASL type Rep SortGenerationFeatures :: Type -> Type from :: SortGenerationFeatures -> Rep SortGenerationFeatures x to :: Rep SortGenerationFeatures x -> SortGenerationFeatures | |
FromJSON SortGenerationFeatures | |
Defined in CASL.ATC_CASL parseJSON :: Value -> Parser SortGenerationFeatures parseJSONList :: Value -> Parser [SortGenerationFeatures] | |
ToJSON SortGenerationFeatures | |
Defined in CASL.ATC_CASL toJSON :: SortGenerationFeatures -> Value toEncoding :: SortGenerationFeatures -> Encoding toJSONList :: [SortGenerationFeatures] -> Value toEncodingList :: [SortGenerationFeatures] -> Encoding | |
ShATermConvertible SortGenerationFeatures | |
Defined in CASL.ATC_CASL toShATermAux :: ATermTable -> SortGenerationFeatures -> IO (ATermTable, Int) toShATermList' :: ATermTable -> [SortGenerationFeatures] -> IO (ATermTable, Int) fromShATermAux :: Int -> ATermTable -> (ATermTable, SortGenerationFeatures) fromShATermList' :: Int -> ATermTable -> (ATermTable, [SortGenerationFeatures]) | |
type Rep SortGenerationFeatures | |
Defined in CASL.ATC_CASL type Rep SortGenerationFeatures = D1 ('MetaData "SortGenerationFeatures" "CASL.Sublogic" "main" 'False) (C1 ('MetaCons "NoSortGen" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SortGen" 'PrefixI 'True) (S1 ('MetaSel ('Just "emptyMapping") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "onlyInjConstrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "totality") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SortGenTotality)))) |
data SortGenTotality Source #
SomePartial | partial constructors in gen constraints |
OnlyTotal | no partial constructors |
OnlyFree | only free types; no partial cons possible |
Instances
Eq SortGenTotality Source # | |
Defined in CASL.Sublogic (==) :: SortGenTotality -> SortGenTotality -> Bool (/=) :: SortGenTotality -> SortGenTotality -> Bool | |
Data SortGenTotality Source # | |
Defined in CASL.Sublogic gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SortGenTotality -> c SortGenTotality gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SortGenTotality toConstr :: SortGenTotality -> Constr dataTypeOf :: SortGenTotality -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SortGenTotality) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SortGenTotality) gmapT :: (forall b. Data b => b -> b) -> SortGenTotality -> SortGenTotality gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SortGenTotality -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SortGenTotality -> r gmapQ :: (forall d. Data d => d -> u) -> SortGenTotality -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SortGenTotality -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SortGenTotality -> m SortGenTotality gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SortGenTotality -> m SortGenTotality gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SortGenTotality -> m SortGenTotality | |
Ord SortGenTotality Source # | |
Defined in CASL.Sublogic compare :: SortGenTotality -> SortGenTotality -> Ordering (<) :: SortGenTotality -> SortGenTotality -> Bool (<=) :: SortGenTotality -> SortGenTotality -> Bool (>) :: SortGenTotality -> SortGenTotality -> Bool (>=) :: SortGenTotality -> SortGenTotality -> Bool max :: SortGenTotality -> SortGenTotality -> SortGenTotality min :: SortGenTotality -> SortGenTotality -> SortGenTotality | |
Show SortGenTotality Source # | |
Defined in CASL.Sublogic showsPrec :: Int -> SortGenTotality -> ShowS show :: SortGenTotality -> String showList :: [SortGenTotality] -> ShowS | |
Generic SortGenTotality | |
Defined in CASL.ATC_CASL type Rep SortGenTotality :: Type -> Type from :: SortGenTotality -> Rep SortGenTotality x to :: Rep SortGenTotality x -> SortGenTotality | |
FromJSON SortGenTotality | |
Defined in CASL.ATC_CASL parseJSON :: Value -> Parser SortGenTotality parseJSONList :: Value -> Parser [SortGenTotality] | |
ToJSON SortGenTotality | |
Defined in CASL.ATC_CASL toJSON :: SortGenTotality -> Value toEncoding :: SortGenTotality -> Encoding toJSONList :: [SortGenTotality] -> Value toEncodingList :: [SortGenTotality] -> Encoding | |
ShATermConvertible SortGenTotality | |
Defined in CASL.ATC_CASL toShATermAux :: ATermTable -> SortGenTotality -> IO (ATermTable, Int) toShATermList' :: ATermTable -> [SortGenTotality] -> IO (ATermTable, Int) fromShATermAux :: Int -> ATermTable -> (ATermTable, SortGenTotality) fromShATermList' :: Int -> ATermTable -> (ATermTable, [SortGenTotality]) | |
type Rep SortGenTotality | |
Defined in CASL.ATC_CASL type Rep SortGenTotality = D1 ('MetaData "SortGenTotality" "CASL.Sublogic" "main" 'False) (C1 ('MetaCons "SomePartial" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "OnlyTotal" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OnlyFree" 'PrefixI 'False) (U1 :: Type -> Type))) |
class
predicates on CASL_SL
functions for SemiLatticeWithTop instance
functions for the creation of minimal sublogics
updExtFeature :: (a -> a) -> CASL_SL a -> CASL_SL a Source #
functions for Logic instance sublogic to string conversion
sublogics_name :: (a -> String) -> CASL_SL a -> String Source #
list of all sublogics
sublogics_all :: Lattice a => [a] -> [CASL_SL a] Source #
computes the sublogic of a given element
sl_sig_items :: Lattice a => (s -> CASL_SL a) -> (f -> CASL_SL a) -> SIG_ITEMS s f -> CASL_SL a Source #
sl_basic_spec :: Lattice a => (b -> CASL_SL a) -> (s -> CASL_SL a) -> (f -> CASL_SL a) -> BASIC_SPEC b s f -> CASL_SL a Source #
sl_symb_items :: Lattice a => SYMB_ITEMS -> CASL_SL a Source #
sl_symb_map_items :: Lattice a => SYMB_MAP_ITEMS -> CASL_SL a Source #
projects an element into a given sublogic
pr_basic_spec :: Lattice a => (CASL_SL a -> b -> (Maybe (BASIC_ITEMS b s f), [SORT])) -> (CASL_SL a -> s -> (Maybe (SIG_ITEMS s f), [SORT])) -> (CASL_SL a -> f -> Maybe (FORMULA f)) -> CASL_SL a -> BASIC_SPEC b s f -> BASIC_SPEC b s f Source #
pr_symb_items :: Lattice a => CASL_SL a -> SYMB_ITEMS -> Maybe SYMB_ITEMS Source #
pr_symb_map_items :: Lattice a => CASL_SL a -> SYMB_MAP_ITEMS -> Maybe SYMB_MAP_ITEMS Source #