Logic_LF.hs revision d2786879b4733fd4886a5b654f7c6de1d234f638
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'Reilly{-# LANGUAGE MultiParamTypeClasses, TypeSynonymInstances #-}
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'ReillyModule : $Header$
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'ReillyDescription : Instances of classes defined in Logic.hs for the Edinburgh
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'Reilly Logical Framework
98890889ffb2e8f6f722b00e265a211f13b5a861Corneliu-Claudiu ProdescuCopyright : (c) Kristina Sojakova, DFKI Bremen 2009
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'ReillyLicense : GPLv2 or higher, see LICENSE.txt
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'ReillyMaintainer : k.sojakova@jacobs-university.de
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'ReillyStability : experimental
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'ReillyPortability : portable
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reillyimport qualified Data.Map as Map
33bdce26495121cdbce30331ef90a1969126a840Liam O'Reillydata LF = LF deriving Show
d3b4ad111a281d125659e12d6641943f29d6b3dfLiam O'Reillyinstance Language LF where
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly description LF = "Edinburgh Logical Framework"
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reillyinstance Category Sign Morphism where
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly ide = idMorph
1b2195930f52ad43e6bb64b1df0cf6718bfd84c0Liam O'Reilly composeMorphisms = compMorph
1b2195930f52ad43e6bb64b1df0cf6718bfd84c0Liam O'Reilly isInclusion = Map.null . symMap . canForm
1b2195930f52ad43e6bb64b1df0cf6718bfd84c0Liam O'Reilly legal_mor = const True
1b2195930f52ad43e6bb64b1df0cf6718bfd84c0Liam O'Reillyinstance Syntax LF BASIC_SPEC SYMB_ITEMS SYMB_MAP_ITEMS where
1b2195930f52ad43e6bb64b1df0cf6718bfd84c0Liam O'Reilly parse_basic_spec LF = Just basicSpec
1b2195930f52ad43e6bb64b1df0cf6718bfd84c0Liam O'Reilly parse_symb_items LF = Just symbItems
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly parse_symb_map_items LF = Just symbMapItems
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reillyinstance Sentences LF
9738b4e358f960105062839c835bb9eff3e44588Liam O'Reilly map_sen LF m = (Result []) . (translate m)
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly sym_of LF = singletonList . getSymbols
33bdce26495121cdbce30331ef90a1969126a840Liam O'Reillyinstance Logic LF
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly SYMB_MAP_ITEMS
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reillyinstance StaticAnalysis LF
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly basic_analysis LF = Just $ basicAnalysis
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly empty_signature LF = emptySig
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'Reilly signature_union LF = sigUnion
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'Reilly is_subsig LF = isSubsig
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly subsig_inclusion LF = inclusionMorph
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reillyinstance LogicFram LF
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly SYMB_MAP_ITEMS
fd8af3ecf2dff782cb2496c1c9bf9d0a76faa98bLiam O'Reilly getBaseSig LF = baseSigLF
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly writeLogic LF = writeLogicLF
c3efd4f435e954846981cf46bca64e0485266634Liam O'Reilly writeSyntax LF = writeSyntaxLF