CompositionTable.hs revision 98890889ffb2e8f6f722b00e265a211f13b5a861
446N/A{- |
4744N/AModule : $Header$
446N/ADescription : composition tables of qualitative calculi
446N/ACopyright : (c) Uni Bremen 2005
446N/ALicense : GPLv2 or higher, see LICENSE.txt
446N/A
446N/AMaintainer : till@informatik.uni-bremen.de
446N/AStability : provisional
446N/APortability : portable
446N/A
446N/Acomposition tables
446N/A-}
446N/A
446N/Amodule CASL.CompositionTable.CompositionTable where
446N/A
446N/Adata Table = Table Table_Attrs Compositiontable Conversetable
446N/A Reflectiontable Models
446N/A deriving (Eq,Show)
446N/A
446N/Adata Table_Attrs = Table_Attrs
873N/A { tableName :: String
446N/A , tableIdentity :: Baserel
446N/A , baseRelations :: [Baserel]
446N/A } deriving (Eq, Show)
446N/A
5073N/Anewtype Compositiontable = Compositiontable [Cmptabentry]
446N/A deriving (Eq, Show)
446N/A
446N/Adata Conversetable = Conversetable [Contabentry] |
4744N/A Conversetable_Ternary
4744N/A { inverse, shortcut, homing :: [Contabentry_Ternary] }
4744N/A deriving (Eq, Show)
4744N/A
4744N/Adata Reflectiontable = Reflectiontable [Reftabentry]
4744N/A deriving (Eq, Show)
4744N/A
4744N/Anewtype Models = Models [Model]
4744N/A deriving (Eq, Show)
4744N/A
4744N/Adata Cmptabentry = Cmptabentry Cmptabentry_Attrs [Baserel]
4744N/A deriving (Eq, Show)
4744N/A
4744N/Adata Cmptabentry_Attrs = Cmptabentry_Attrs
4744N/A { cmptabentryArgBaserel1 :: Baserel
4744N/A , cmptabentryArgBaserel2 :: Baserel
4744N/A } deriving (Eq, Show)
4744N/A
4744N/Adata Contabentry = Contabentry
4744N/A { contabentryArgBaseRel :: Baserel
4744N/A , contabentryConverseBaseRel :: Baserel
4744N/A } deriving (Eq, Show)
5073N/A
4744N/Adata Contabentry_Ternary = Contabentry_Ternary
5073N/A { contabentry_TernaryArgBaseRel :: Baserel
4744N/A , contabentry_TernaryConverseBaseRels :: [Baserel]
4744N/A } deriving (Eq, Show)
4744N/A
4744N/Adata Reftabentry = Reftabentry
4744N/A { reftabentryArgBaseRel :: Baserel
957N/A , reftabentryReflectiveBaseRel :: Baserel
4744N/A } deriving (Eq,Show)
4744N/A
4744N/Adata Model = Model
4744N/A { modelString1 :: String
4744N/A , modelString2 :: String
4744N/A } deriving (Eq, Show)
4744N/A
4744N/Adata Baserel = Baserel
4744N/A { baserelBaserel :: String
4744N/A } deriving (Eq, Ord)
4744N/A
4744N/Ainstance Show Baserel where
4744N/A show (Baserel b) = "Baserel: " ++ b
4744N/A