Copyright | (c) Till Mossakowski Uni Bremen 2002-2006 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | till@informatik.uni-bremen.de |
Stability | provisional |
Portability | non-portable(Logic) |
Safe Haskell | None |
theory datastructure for development graphs
Synopsis
- newtype ThId = ThId Int
- startThId :: ThId
- data G_theory = forall lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree.Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => G_theory {
- gTheoryLogic :: lid
- gTheorySyntax :: Maybe IRI
- gTheorySign :: ExtSign sign symbol
- gTheorySignIdx :: SigId
- gTheorySens :: ThSens sentence (AnyComorphism, BasicProof)
- gTheorySelfIdx :: ThId
- createGThWith :: G_theory -> SigId -> ThId -> G_theory
- coerceThSens :: (Logic lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1, Logic lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2, MonadFail m, Typeable b) => lid1 -> lid2 -> String -> ThSens sentence1 b -> m (ThSens sentence2 b)
- prettyFullGTheory :: Maybe IRI -> G_theory -> Doc
- prettyGTheorySL :: G_theory -> Doc
- prettyGTheory :: Maybe IRI -> G_theory -> Doc
- sublogicOfTh :: G_theory -> G_sublogics
- getThGoals :: G_theory -> [(String, Maybe BasicProof)]
- getThAxioms :: G_theory -> [(String, Bool)]
- getThSens :: G_theory -> [String]
- simplifyTh :: G_theory -> G_theory
- mapG_theory :: Bool -> AnyComorphism -> G_theory -> Result G_theory
- gEmbedGTC :: AnyComorphism -> G_theory -> Result GMorphism
- translateG_theory :: GMorphism -> G_theory -> Result G_theory
- joinG_sentences :: MonadFail m => G_theory -> G_theory -> m G_theory
- intersectG_sentences :: MonadFail m => G_sign -> G_theory -> G_theory -> m G_theory
- flatG_sentences :: MonadFail m => G_theory -> [G_theory] -> m G_theory
- signOf :: G_theory -> G_sign
- noSensGTheory :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> ExtSign sign symbol -> SigId -> G_theory
- data BasicProof
- = forall lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree.Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => BasicProof lid (ProofStatus proof_tree)
- | Guessed
- | Conjectured
- | Handwritten
- isProvenSenStatus :: SenStatus a (AnyComorphism, BasicProof) -> Bool
- isProvedBasically :: BasicProof -> Bool
- getValidAxioms :: G_theory -> G_theory -> [String]
- invalidateProofs :: G_theory -> G_theory -> G_theory -> (Bool, G_theory)
- proveSens :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> ThSens sentence (AnyComorphism, BasicProof) -> ThSens sentence (AnyComorphism, BasicProof)
- proveLocalSens :: G_theory -> G_theory -> G_theory
- proveSensAux :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> ThSens sentence (AnyComorphism, BasicProof) -> ThSens sentence (AnyComorphism, BasicProof) -> ThSens sentence (AnyComorphism, BasicProof)
- propagateProofs :: G_theory -> G_theory -> G_theory
- type GDiagram = Gr G_theory (Int, GMorphism)
- isHomogeneousGDiagram :: GDiagram -> Bool
- homogeniseGDiagram :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> GDiagram -> Result (Gr sign (Int, morphism))
- homogeniseSink :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> [(Node, GMorphism)] -> Result [(Node, morphism)]
- gEnsuresAmalgamability :: [CASLAmalgOpt] -> GDiagram -> [(Int, GMorphism)] -> Result Amalgamates
Documentation
ThId Int |
Instances
Enum ThId Source # | |
Eq ThId Source # | |
Ord ThId Source # | |
Show ThId Source # | |
ShATermConvertible ThId Source # | |
Defined in Static.GTheory toShATermAux :: ATermTable -> ThId -> IO (ATermTable, Int) toShATermList' :: ATermTable -> [ThId] -> IO (ATermTable, Int) fromShATermAux :: Int -> ATermTable -> (ATermTable, ThId) fromShATermList' :: Int -> ATermTable -> (ATermTable, [ThId]) |
Grothendieck theories with lookup indices
forall lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree.Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => G_theory | |
|
coerceThSens :: (Logic lid1 sublogics1 basic_spec1 sentence1 symb_items1 symb_map_items1 sign1 morphism1 symbol1 raw_symbol1 proof_tree1, Logic lid2 sublogics2 basic_spec2 sentence2 symb_items2 symb_map_items2 sign2 morphism2 symbol2 raw_symbol2 proof_tree2, MonadFail m, Typeable b) => lid1 -> lid2 -> String -> ThSens sentence1 b -> m (ThSens sentence2 b) Source #
prettyGTheorySL :: G_theory -> Doc Source #
sublogicOfTh :: G_theory -> G_sublogics Source #
compute sublogic of a theory
getThGoals :: G_theory -> [(String, Maybe BasicProof)] Source #
get theorem names with their best proof results
getThAxioms :: G_theory -> [(String, Bool)] Source #
get axiom names plus True for former theorem
simplifyTh :: G_theory -> G_theory Source #
simplify a theory (throw away qualifications)
mapG_theory :: Bool -> AnyComorphism -> G_theory -> Result G_theory Source #
apply a comorphism to a theory
gEmbedGTC :: AnyComorphism -> G_theory -> Result GMorphism Source #
Embedding of GTCs as Grothendieck sig mors
translateG_theory :: GMorphism -> G_theory -> Result G_theory Source #
Translation of a G_theory along a GMorphism
joinG_sentences :: MonadFail m => G_theory -> G_theory -> m G_theory Source #
Join the sentences of two G_theories
intersectG_sentences :: MonadFail m => G_sign -> G_theory -> G_theory -> m G_theory Source #
Intersect the sentences of two G_theories, G_sign is the intersection of their signatures
flatG_sentences :: MonadFail m => G_theory -> [G_theory] -> m G_theory Source #
flattening the sentences form a list of G_theories
noSensGTheory :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> ExtSign sign symbol -> SigId -> G_theory Source #
create theory without sentences
data BasicProof Source #
forall lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree.Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => BasicProof lid (ProofStatus proof_tree) | |
Guessed | |
Conjectured | |
Handwritten |
Instances
Eq BasicProof Source # | |
Defined in Static.GTheory (==) :: BasicProof -> BasicProof -> Bool (/=) :: BasicProof -> BasicProof -> Bool | |
Ord BasicProof Source # | |
Defined in Static.GTheory compare :: BasicProof -> BasicProof -> Ordering (<) :: BasicProof -> BasicProof -> Bool (<=) :: BasicProof -> BasicProof -> Bool (>) :: BasicProof -> BasicProof -> Bool (>=) :: BasicProof -> BasicProof -> Bool max :: BasicProof -> BasicProof -> BasicProof min :: BasicProof -> BasicProof -> BasicProof | |
Show BasicProof Source # | |
Defined in Static.GTheory showsPrec :: Int -> BasicProof -> ShowS show :: BasicProof -> String showList :: [BasicProof] -> ShowS | |
ShATermLG BasicProof Source # | |
Defined in ATC.Grothendieck toShATermLG :: ATermTable -> BasicProof -> IO (ATermTable, Int) Source # fromShATermLG :: LogicGraph -> Int -> ATermTable -> (ATermTable, BasicProof) Source # |
isProvenSenStatus :: SenStatus a (AnyComorphism, BasicProof) -> Bool Source #
test a theory sentence
isProvedBasically :: BasicProof -> Bool Source #
proveSens :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> ThSens sentence (AnyComorphism, BasicProof) -> ThSens sentence (AnyComorphism, BasicProof) Source #
mark sentences as proven if an identical axiom or other proven sentence is part of the same theory.
proveSensAux :: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree => lid -> ThSens sentence (AnyComorphism, BasicProof) -> ThSens sentence (AnyComorphism, BasicProof) -> ThSens sentence (AnyComorphism, BasicProof) Source #
mark sentences as proven if an identical axiom or other proven sentence is part of a given global theory.
propagateProofs :: G_theory -> G_theory -> G_theory Source #
mark all sentences of a local theory that have been proven via a prover over a global theory (with the same signature) as proven. Also mark duplicates of proven sentences as proven. Assume that the sentence names of the local theory are identical to the global theory.
isHomogeneousGDiagram :: GDiagram -> Bool Source #
checks whether a connected GDiagram is homogeneous
:: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree | |
=> lid | the target logic to be coerced to |
-> GDiagram | the GDiagram to be homogenised |
-> Result (Gr sign (Int, morphism)) |
homogenise a GDiagram to a targeted logic
:: Logic lid sublogics basic_spec sentence symb_items symb_map_items sign morphism symbol raw_symbol proof_tree | |
=> lid | the target logic to which morphisms will be coerced |
-> [(Node, GMorphism)] | the list of edges to be homogenised |
-> Result [(Node, morphism)] |
Coerce GMorphisms in the list of (diagram node, GMorphism) pairs to morphisms in given logic
gEnsuresAmalgamability :: [CASLAmalgOpt] -> GDiagram -> [(Int, GMorphism)] -> Result Amalgamates Source #