zsyntax-0.2.0.0: Automated theorem prover for the Zsyntax biochemical calculus

Safe HaskellSafe
LanguageHaskell2010

Otter.Internal.Structures

Synopsis

Documentation

data Stage Source #

Stages of proof search

Constructors

Initial

Initial node

Active

Active node

Inactive

Inactive node

Concl

Conclusion node

FSChecked

Forward subsumption-checked

BSChecked

Backward subsumption-checked

GlIndex

Global index node

Goal

Goal node

data SearchNode :: Stage -> * -> * Source #

Type of search nodes in the search space, given by a node together with a proof search stage.

Instances
Show a => Show (SearchNode s a) Source # 
Instance details

Defined in Otter.Internal.Structures

Methods

showsPrec :: Int -> SearchNode s a -> ShowS #

show :: SearchNode s a -> String #

showList :: [SearchNode s a] -> ShowS #

data GlobalIndex n Source #

Instances
Foldable GlobalIndex Source # 
Instance details

Defined in Otter.Internal.Structures

Methods

fold :: Monoid m => GlobalIndex m -> m #

foldMap :: Monoid m => (a -> m) -> GlobalIndex a -> m #

foldr :: (a -> b -> b) -> b -> GlobalIndex a -> b #

foldr' :: (a -> b -> b) -> b -> GlobalIndex a -> b #

foldl :: (b -> a -> b) -> b -> GlobalIndex a -> b #

foldl' :: (b -> a -> b) -> b -> GlobalIndex a -> b #

foldr1 :: (a -> a -> a) -> GlobalIndex a -> a #

foldl1 :: (a -> a -> a) -> GlobalIndex a -> a #

toList :: GlobalIndex a -> [a] #

null :: GlobalIndex a -> Bool #

length :: GlobalIndex a -> Int #

elem :: Eq a => a -> GlobalIndex a -> Bool #

maximum :: Ord a => GlobalIndex a -> a #

minimum :: Ord a => GlobalIndex a -> a #

sum :: Num a => GlobalIndex a -> a #

product :: Num a => GlobalIndex a -> a #

type SearchRule n = Rule (ActiveNode n) (ConclNode n) Source #

Type of elements that represent the result of applying an inference rule.

Such application may either fail, succeed with a value (when the rule has been fully applied), or succeed with a function (when the rule is only partially applied and has still some premises to match).

type SearchProperRule n = ProperRule (ActiveNode n) (ConclNode n) Source #

Type of inference rules. Axioms are not considered rules in this case, so a rule takes at least one premise. Hence the corresponding type is a function from a premise sequent to a rule application result.

class Subsumable n where Source #

Methods

subsumes :: n -> n -> Bool Source #

Instances
(Ord a, Ord l) => Subsumable (LSequent a l) Source # 
Instance details

Defined in Zsyntax.Labelled.Rule.Interface

Methods

subsumes :: LSequent a l -> LSequent a l -> Bool Source #

Subsumable s => Subsumable (tm ::: s) Source # 
Instance details

Defined in Zsyntax.Labelled.Rule.BipoleRelation

Methods

subsumes :: (tm ::: s) -> (tm ::: s) -> Bool Source #

(Ord a, Ord l) => Subsumable (GoalNSequent a l) Source # 
Instance details

Defined in Zsyntax.Labelled.Rule.Frontier

Methods

subsumes :: GoalNSequent a l -> GoalNSequent a l -> Bool Source #

foldActives :: (forall f. Foldable f => f (ActiveNode n) -> b) -> ActiveNodes n -> b Source #

extractNode :: SearchNode s seq -> seq Source #