Copyright | (c) Sonja Groening, 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 |
This module provides the sublogic functions (as required by Logic.hs) for HasCASL. The functions allow to compute the minimal sublogic needed by a given element, to check whether an item is part of a given sublogic, and -- not yet -- to project an element into a given sublogic.
- data Sublogic = Sublogic {
- has_sub :: Bool
- has_part :: Bool
- has_eq :: Bool
- has_pred :: Bool
- type_classes :: Classes
- has_polymorphism :: Bool
- has_type_constructors :: Bool
- has_products :: Bool
- which_logic :: Formulas
- data Formulas
- data Classes
- topLogic :: Sublogic
- sublogic_max :: Sublogic -> Sublogic -> Sublogic
- sublogic_min :: Sublogic -> Sublogic -> Sublogic
- sublogicUp :: Sublogic -> Sublogic
- need_hol :: Sublogic
- bottom :: Sublogic
- noSubtypes :: Sublogic
- noClasses :: Sublogic
- totalFuns :: Sublogic
- caslLogic :: Sublogic
- sublogic_name :: Sublogic -> String
- sublogics_all :: [Sublogic]
- in_basicSpec :: Sublogic -> BasicSpec -> Bool
- in_sentence :: Sublogic -> Sentence -> Bool
- in_symbItems :: Sublogic -> SymbItems -> Bool
- in_symbMapItems :: Sublogic -> SymbMapItems -> Bool
- in_env :: Sublogic -> Env -> Bool
- in_morphism :: Sublogic -> Morphism -> Bool
- in_symbol :: Sublogic -> Symbol -> Bool
- sl_basicSpec :: BasicSpec -> Sublogic
- sl_sentence :: Sentence -> Sublogic
- sl_symbItems :: SymbItems -> Sublogic
- sl_symbMapItems :: SymbMapItems -> Sublogic
- sl_env :: Env -> Sublogic
- sl_morphism :: Morphism -> Sublogic
- sl_symbol :: Symbol -> Sublogic
datatypes
data Sublogic
HasCASL sublogics
Sublogic | |
|
data Formulas
formula kinds of HasCASL sublogics
data Classes
functions for SemiLatticeWithTop instance
sublogic_max :: Sublogic -> Sublogic -> Sublogic
combining sublogics restrictions
sublogic_min :: Sublogic -> Sublogic -> Sublogic
sublogicUp :: Sublogic -> Sublogic
make sublogic consistent w.r.t. illegal combinations
further sublogic constants
top sublogic without subtypes
functions for Logic instance
sublogic to string converstion
sublogic_name :: Sublogic -> String
the sublogic name as a singleton string list
list of all sublogics
sublogics_all :: [Sublogic]
generate a list of all sublogics for HasCASL
checks if element is in given sublogic
in_basicSpec :: Sublogic -> BasicSpec -> Bool
in_sentence :: Sublogic -> Sentence -> Bool
in_symbItems :: Sublogic -> SymbItems -> Bool
in_symbMapItems :: Sublogic -> SymbMapItems -> Bool
in_morphism :: Sublogic -> Morphism -> Bool
computes the sublogic of a given element
sl_basicSpec :: BasicSpec -> Sublogic
sl_sentence :: Sentence -> Sublogic
sl_symbItems :: SymbItems -> Sublogic
sl_morphism :: Morphism -> Sublogic