hets -- a heterogenous Specification (CASL) tool set
Contents
Index
HasCASL.Morphism
Portability
portable
Stability
provisional
Maintainer
hets@tzi.de
Description
Morphism on
Env
(as for CASL)
Synopsis
data
SymbolType
=
OpAsItemType
TySc
|
TypeAsItemType
Kind
|
ClassAsItemType
Kind
data
Symbol
=
Symbol
{
symName
::
Id
symbType
::
SymbolType
}
data
RawSymbol
=
ASymbol
Symbol
|
AnID
Id
|
AKindedId
SymbKind
Id
type
SymbolMap
=
Map
Symbol
Symbol
idToTypeSymbol
::
Id
->
Kind
->
Symbol
idToOpSymbol
::
Id
->
TySc
->
Symbol
idToRaw
::
Id
->
RawSymbol
symbTypeToKind
::
SymbolType
->
SymbKind
symbolToRaw
::
Symbol
->
RawSymbol
symOf
::
Env
->
Set
Symbol
statSymbMapItems
:: [
SymbMapItems
] ->
Result
(
Map
RawSymbol
RawSymbol
)
symbOrMapToRaw
::
SymbKind
->
SymbOrMap
-> (
RawSymbol
,
RawSymbol
)
statSymbItems
:: [
SymbItems
] ->
Result
[
RawSymbol
]
symbToRaw
::
SymbKind
->
Symb
->
RawSymbol
symbKindToRaw
::
SymbKind
->
Id
->
RawSymbol
matchSymb
::
Symbol
->
RawSymbol
->
Bool
rawSymName
::
RawSymbol
->
Id
type
IdMap
=
Map
Id
Id
mapType
::
IdMap
->
Type
->
Type
mapTypeScheme
::
IdMap
->
TypeScheme
->
TypeScheme
mapTySc
::
IdMap
->
TySc
->
TySc
data
TySc
=
TySc
TypeScheme
type
FunMap
=
Map
(
Id
,
TySc
) (
Id
,
TySc
)
mapFunSym
::
IdMap
->
FunMap
-> (
Id
,
TySc
) ->
Maybe
(
Id
,
TySc
)
mergeOpInfos
::
TypeMap
->
Int
->
OpInfos
->
OpInfos
->
Result
OpInfos
mergeOps
::
TypeMap
->
Int
-> [
OpInfo
] -> [
OpInfo
] ->
Result
[
OpInfo
]
mergeEnv
::
Env
->
Env
->
Result
Env
data
Morphism
=
Morphism
{
msource
::
Env
mtarget
::
Env
classIdMap
::
IdMap
typeIdMap
::
IdMap
funMap
::
FunMap
}
mkMorphism
::
Env
->
Env
->
Morphism
ideMor
::
Env
->
Morphism
compMor
::
Morphism
->
Morphism
->
Maybe
Morphism
isSubEnv
::
Env
->
Env
->
Bool
inclusionMor
::
Env
->
Env
->
Result
Morphism
embedMorphism
::
Env
->
Env
->
Morphism
symbMapToMorphism
::
Env
->
Env
->
SymbolMap
->
Result
Morphism
legalEnv
::
Env
->
Bool
legalMor
::
Morphism
->
Bool
morphismUnion
::
Morphism
->
Morphism
->
Result
Morphism
morphismToSymbMap
::
Morphism
->
Map
Symbol
Symbol
compatibleOpTypes
::
TypeScheme
->
TypeScheme
->
Bool
Documentation
data
SymbolType
Constructors
OpAsItemType
TySc
TypeAsItemType
Kind
ClassAsItemType
Kind
Instances
ATermConvertible
SymbolType
PrettyPrint
SymbolType
Show
SymbolType
Eq
SymbolType
Ord
SymbolType
data
Symbol
Constructors
Symbol
symName
::
Id
symbType
::
SymbolType
Instances
Comorphism
CASL2HasCASL
CASL
CASL_Sublogics
BASIC_SPEC
FORMULA
SYMB_ITEMS
SYMB_MAP_ITEMS
Sign
Morphism
Symbol
RawSymbol
()
HasCASL
HasCASL_Sublogics
BasicSpec
Term
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
()
ATermConvertible
Symbol
Typeable
Symbol
Sentences
HasCASL
Term
()
Env
Morphism
Symbol
StaticAnalysis
HasCASL
BasicSpec
Term
()
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
Logic
HasCASL
HasCASL_Sublogics
BasicSpec
Term
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
()
PrettyPrint
Symbol
Show
Symbol
Eq
Symbol
Ord
Symbol
data
RawSymbol
Constructors
ASymbol
Symbol
AnID
Id
AKindedId
SymbKind
Id
Instances
Comorphism
CASL2HasCASL
CASL
CASL_Sublogics
BASIC_SPEC
FORMULA
SYMB_ITEMS
SYMB_MAP_ITEMS
Sign
Morphism
Symbol
RawSymbol
()
HasCASL
HasCASL_Sublogics
BasicSpec
Term
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
()
ATermConvertible
RawSymbol
Typeable
RawSymbol
StaticAnalysis
HasCASL
BasicSpec
Term
()
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
Logic
HasCASL
HasCASL_Sublogics
BasicSpec
Term
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
()
PrettyPrint
RawSymbol
Show
RawSymbol
Eq
RawSymbol
Ord
RawSymbol
type
SymbolMap
=
Map
Symbol
Symbol
idToTypeSymbol
::
Id
->
Kind
->
Symbol
idToOpSymbol
::
Id
->
TySc
->
Symbol
idToRaw
::
Id
->
RawSymbol
symbTypeToKind
::
SymbolType
->
SymbKind
symbolToRaw
::
Symbol
->
RawSymbol
symOf
::
Env
->
Set
Symbol
statSymbMapItems
:: [
SymbMapItems
] ->
Result
(
Map
RawSymbol
RawSymbol
)
symbOrMapToRaw
::
SymbKind
->
SymbOrMap
-> (
RawSymbol
,
RawSymbol
)
statSymbItems
:: [
SymbItems
] ->
Result
[
RawSymbol
]
symbToRaw
::
SymbKind
->
Symb
->
RawSymbol
symbKindToRaw
::
SymbKind
->
Id
->
RawSymbol
matchSymb
::
Symbol
->
RawSymbol
->
Bool
rawSymName
::
RawSymbol
->
Id
type
IdMap
=
Map
Id
Id
mapType
::
IdMap
->
Type
->
Type
mapTypeScheme
::
IdMap
->
TypeScheme
->
TypeScheme
mapTySc
::
IdMap
->
TySc
->
TySc
data
TySc
Constructors
TySc
TypeScheme
Instances
ATermConvertible
TySc
Eq
TySc
Ord
TySc
Show
TySc
type
FunMap
=
Map
(
Id
,
TySc
) (
Id
,
TySc
)
mapFunSym
::
IdMap
->
FunMap
-> (
Id
,
TySc
) ->
Maybe
(
Id
,
TySc
)
mergeOpInfos
::
TypeMap
->
Int
->
OpInfos
->
OpInfos
->
Result
OpInfos
mergeOps
::
TypeMap
->
Int
-> [
OpInfo
] -> [
OpInfo
] ->
Result
[
OpInfo
]
mergeEnv
::
Env
->
Env
->
Result
Env
data
Morphism
Constructors
Morphism
msource
::
Env
mtarget
::
Env
classIdMap
::
IdMap
typeIdMap
::
IdMap
funMap
::
FunMap
Instances
Comorphism
CASL2HasCASL
CASL
CASL_Sublogics
BASIC_SPEC
FORMULA
SYMB_ITEMS
SYMB_MAP_ITEMS
Sign
Morphism
Symbol
RawSymbol
()
HasCASL
HasCASL_Sublogics
BasicSpec
Term
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
()
ATermConvertible
Morphism
Typeable
Morphism
Category
HasCASL
Env
Morphism
Sentences
HasCASL
Term
()
Env
Morphism
Symbol
StaticAnalysis
HasCASL
BasicSpec
Term
()
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
Logic
HasCASL
HasCASL_Sublogics
BasicSpec
Term
SymbItems
SymbMapItems
Env
Morphism
Symbol
RawSymbol
()
PrettyPrint
Morphism
Eq
Morphism
Show
Morphism
mkMorphism
::
Env
->
Env
->
Morphism
ideMor
::
Env
->
Morphism
compMor
::
Morphism
->
Morphism
->
Maybe
Morphism
isSubEnv
::
Env
->
Env
->
Bool
inclusionMor
::
Env
->
Env
->
Result
Morphism
embedMorphism
::
Env
->
Env
->
Morphism
symbMapToMorphism
::
Env
->
Env
->
SymbolMap
->
Result
Morphism
legalEnv
::
Env
->
Bool
legalMor
::
Morphism
->
Bool
morphismUnion
::
Morphism
->
Morphism
->
Result
Morphism
morphismToSymbMap
::
Morphism
->
Map
Symbol
Symbol
compatibleOpTypes
::
TypeScheme
->
TypeScheme
->
Bool
Check if two OpTypes are equal except from totality or partiality
Produced by
Haddock
version 0.6