Hets - the Heterogeneous Tool SetContentsIndex
Hets - the Heterogeneous Tool Set

Hets is the main analysis tool for the specification language heterogeneous CASL. Heterogeneous CASL (HetCASL, see http://www.informatik.uni-bremen.de/agbkb/forschung/formal_methods/CoFI/HetCASL/index_e.htm) combines the specification language CASL with CASL extensions and sublanguages, as well as completely different logics and even programming languages such as Haskell, including its module system. Hets provides parsing, static analysis and proof management (via development graphs), as well as many other functionalities. Hets is written in Haskell (see http://www.haskell.org and http://trac.informatik.uni-bremen.de:8080/hets/wiki/HetsForDevelopers)

The general background of Hets is explained in /Heterogeneous specification and the heterogeneous tool set/ (http://www.informatik.uni-bremen.de/~till/papers/habil.ps). A short introduction is given in http://www.informatik.uni-bremen.de/~till/papers/hets-tacas.pdf.

The Hets modules are grouped using hierarchical modules (where modules can be grouped into folders); we here only discuss the top view on this hierarchy. For a more details, look at the descriptions of the folders or the individual modules.

The folder Logic contains the infrastructure needed for presenting a logic to Hets. This is complemented by folders working at the heterogeneous level --- the code in modules in these folders is parameterized over an arbitrary but fixed logic graph. Existential types are used for implementing the heterogeneity, see http://haskell.org/haskellwiki/Existential_type. The folder Syntax (see Syntax.ADoc) provides abstract syntax and parsing of heterogeneous structured specifications. Static is for the static analysis, based on the verification static semantics for Heterogeneous CASL. Static.DevGraph contains the data structures for heterogeneous development graphs, including proof management. Finally, the folder Proofs contains an implementation of the proof calculus for heterogeneous development graphs.

The folders CASL, CoCASL, HasCASL, Haskell, CspCASL, Modal, Isabelle contain different instances of the type class Logic of the module Logic.Logic. These instances always are contained in a module named Logic_xxx, where xxx is the name of the language at hand. Since the integration of a new logic into Hets requires writing a new instantiation of the type class Logic, it is advisable to consult the module Logic_xxx (and the modules imported there) for some logic that is in some sense similar to the new logic to be integrated. In particular, we have implemented the CASL logic in such a way that much of the folder CASL can be re-used for CASL extensions as well; this is achieved via holes (realized via polymorphic variables) in the types for signatures, morphisms, abstract syntax etc. This eases integration of CASL extensions and keeps the effort quite moderate.

The folder Comorphisms contains various comorphisms and other translations that constitute the logic graph. Note that these modules can be compiled independently of the logic independent heterogeneous modules listed above. The module Comorphisms.LogicList assembles all the logics into one (heterogeneous) list, while Comorphisms.LogicGraph builds up the logic graph, i.e. it assembles all the (co)morphisms among the logics, and also specifies which ones are standard inclusions. This module also provides a partial union for logics, which is crucial for the static analysis of unions of specifications (which may occur explicitly or implicitly).

Last but not least, there are general purpose folders. The most important one is the folder Common. It contains general purpose libraries, e.g. for relations, and for parsing and pretty printing. Common.Result provides a monad for error handling and error messages that is used at many places throughout Hets (see http://www.haskell.org/all_about_monads/ for an introduction to monads).

The folder ATC is for conversion from and to shared ATerms. The utils folder contains tools like DriFT and InlineAxioms, the latter can be used to write the axioms for theoroidal comorphisms in a concise way, namely in the input syntax of the respective target logic (the identifiers will turn into Haskell variables and can hence be used for easily producing instances of axiom schemes).

The command line interface is contained in Driver, the graphical interface in GUI. The latter is based on the UniForM Workbench that provides an event system and encapsulations of TclTk http://www.informatik.uni-bremen.de/htk/ and uDraw(Graph) http://www.informatik.uni-bremen.de/uDrawGraph/en/index.html.

Hets is also based on the following third-party libraries:

Visit Driver.Version for the date of this documentation.

Modules
show/hideATCshared ATerm conversion instances
ATC.AS_Annotationgenerated Typeable, ShATermConvertible instances
ATC.AS_Architecturegenerated Typeable, ShATermLG instances
ATC.AS_Librarygenerated Typeable, ShATermLG instances
ATC.AS_Structuredgenerated Typeable, ShATermLG instances
ATC.Consistencygenerated Typeable, ShATermConvertible instances
ATC.DefaultMorphismgenerated Typeable, ShATermConvertible instances
ATC.DevGraphgenerated Typeable, ShATermLG instances
ATC.ExtSigngenerated Typeable, ShATermConvertible instances
ATC.GlobalAnnotationsgenerated Typeable, ShATermConvertible instances
ATC.Graphgenerated Typeable, ShATermConvertible instances
ATC.Grothendieckmanually created ShATermConvertible instances
ATC.Idgenerated Typeable, ShATermConvertible instances
ATC.LibNamegenerated Typeable, ShATermConvertible instances
ATC.OrderedMapgenerated Typeable, ShATermConvertible instances
ATC.ProofTreegenerated Typeable, ShATermConvertible instances
ATC.Provergenerated Typeable, ShATermConvertible instances
ATC.Resultgenerated Typeable, ShATermConvertible instances
ATC.Sml_catsconversions to and from old SML aterm format
show/hideCASLbasics of the common algebraic specification language
CASL.AS_Basic_CASLAbstract syntax of CASL basic specifications
CASL.ATC_CASLgenerated Typeable, ShATermConvertible instances
CASL.AmalgamabilityAmalgamability analysis for CASL.
show/hideCCC
CASL.CCC.FreeTypesconsistency checking of free types
CASL.CCC.OnePointCheck for truth in one-point model
CASL.CCC.TermFormulaauxiliary functions on terms and formulas
CASL.CCC.TerminationProoftermination proofs for equation systems, using AProVE
CASL.ColimSignCASL signatures colimits
show/hideCompositionTable
CASL.CompositionTable.CompositionTablecomposition tables of qualitative calculi
CASL.CompositionTable.ComputeTableCompute the composition table of a relational algebra
CASL.CompositionTable.ModelCheckerchecks validity of models regarding a composition table
CASL.CompositionTable.ParseSparQparsing SparQ CompositionTables
CASL.CompositionTable.ToXmlXML output for composition tables of qualitative calculi
CASL.Foldfolding functions for CASL terms and formulas
CASL.FormulaParser for CASL terms and formulae
CASL.FreenessComputation of the constraints needed for free definition links.
CASL.InductionDerive induction schemes from sort generation constraints
CASL.InjectReplace Sorted_term(s) with explicit injection functions.
CASL.Logic_CASLInstance of class Logic for the CASL logic
CASL.MapSentencerename symbols of sentences according to a signature morphisms
CASL.MixfixParserMixfix analysis of terms
CASL.Monotonmonotonicities of the overload relation
CASL.MorphismSymbols and signature morphisms for the CASL logic
CASL.OMDocHets-to-OMDoc conversion
CASL.OpItemParser for OP-ITEMs (operation declarations and definitions)
CASL.OverloadOverload resolution
CASL.Parse_AS_BasicParsing CASL's SIG-ITEMS, BASIC-ITEMS and BASIC-SPEC
CASL.Projectreplace casts with explicit projection functions
CASL.QualifyCode out overloading and qualify all names
CASL.QuantificationFree variables; getting rid of superfluous quantifications
CASL.QuickCheckQuickCheck model checker for CASL.CFOL
CASL.ShowMixfixuniquely show mixfix terms with sufficient parenthesis
CASL.SignCASL signatures and local environments for basic analysis
CASL.Simplifyresolve empty conjunctions and other trivial cases
CASL.SimplifySensimplification of formulas and terms for output after analysis
CASL.SortItemparser for SORT-ITEMs
CASL.StaticAnaCASL static analysis for basic specifications
CASL.Sublogicsublogic analysis for CASL
CASL.SymbolMapAnalysissymbol map analysis for the CASL logic.
CASL.SymbolParserParser for symbols in translations and reductions
CASL.Taxonomyconverters for theories to MMiSSOntology (subsorting and concept taxonomies)
CASL.ToDocpretty printing data types of BASIC_SPEC
CASL.ToItemextracted annotated items as strings from BASIC_SPEC
CASL.ToSExprtranslate CASL to S-Expressions
CASL.UtilsUtilities for CASL and its comorphisms
show/hideCASL_DL
CASL_DL.AS_CASL_DLabstract syntax for CASL_DL logic extension of CASL
CASL_DL.ATC_CASL_DLgenerated Typeable, ShATermConvertible instances
CASL_DL.Logic_CASL_DLInstance of class Logic for CASL DL
CASL_DL.Parse_AS
CASL_DL.PredefinedCASLAxiomswith inlined axioms
CASL_DL.PredefinedGlobalAnnos
CASL_DL.PredefinedSignwith inlined axioms
CASL_DL.Print_AS
CASL_DL.SignSignatures for DL logics, as extension of CASL signatures
CASL_DL.StatAnastatic analysis of DL parts
CASL_DL.Sublogicssublogic analysis for CASL_DL
show/hideCMDL
CMDL.Commandslist of all commands of CMDL interface
CMDL.ConsCommandsCMDL interface commands
CMDL.DataTypesInternal data types of the CMDL interface
CMDL.DataTypesUtilsutilitary functions used throughout the CMDL interface
CMDL.DgCommandsCMDL interface development graph commands
CMDL.InfoCommandsCMDL interface commands
CMDL.InterfaceThe definition of CMDL interface for standard input and file input
CMDL.ParseProofScriptparse a heterogeneous proof script
CMDL.ProcessScriptprocess script commands
CMDL.ProveCommandsCMDL interface commands
CMDL.ProveConsistencyCMDL interface commands
CMDL.Shellshell related functions
CMDL.UndoRedodescription of undo and redo functions
CMDL.Utilsutilitary functions used throughout the CMDL interface
show/hideCOL
COL.AS_COLAbstract syntax for COL extension of CASL
COL.ATC_COLgenerated Typeable, ShATermConvertible instances
COL.COLSignSignatures of COL as extension of CASL signatures
COL.Logic_COLCOL instance of class Logic
COL.Parse_ASParser for COL
COL.Print_ASPretty printing for COL
COL.StatAnaStatic analysis for COL
show/hideCoCASLCo-algebraic CASL extension
CoCASL.AS_CoCASLAbstract syntax for CoCASL
CoCASL.ATC_CoCASLgenerated Typeable, ShATermConvertible instances
CoCASL.CoCASLSignSignatures for CoCASL, as extension of CASL signatures
CoCASL.Logic_CoCASLInstance of class Logic for CoCASL
CoCASL.Parse_ASParser for CoCASL
CoCASL.Print_ASpretty print abstract syntax of CoCASL
CoCASL.StatAnastatic analysis for CoCASL
CoCASL.Sublogicsublogic analysis for CoCASL
show/hideCommoncommonly used modules
Common.AS_Annotationdatastructures for annotations of (Het)CASL.
show/hideATerm
Common.ATerm.ConvInstancesspecial ShATermConvertible instances
Common.Amalgamatedata types for amalgamability options and analysis
Common.AnalyseAnnosanalyse annotations and add them to global ones
Common.AnnoParserparsers for annotations and annoted items
Common.AnnoStateparsing of interspersed annotations
Common.Consistencydata types for consistency aka conservativity
Common.ConvertGlobalAnnosconvert global annotations to a list of annotations
Common.ConvertLiteralgeneric conversion of literals
Common.ConvertMixfixTokengeneric conversion of mixfix tokens
Common.DefaultMorphismsupply a default morphism for a given signature type
Common.Docdocument data type Doc for (pretty) printing in various formats
Common.DocUtilsPretty class for pretty printing with instances plus utilities
Common.Earleygeneric mixfix analysis, using an Earley parser
Common.Exceptionwrapper module for changed exception handling in ghc-6.10.1
Common.ExtSignsignatures with symbol sets
Common.GlobalAnnotationsdata structures for global annotations
Common.Idpositions, simple and mixfix identifiers
Common.InjMapinjective maps
Common.Itempositions, simple and mixfix identifiers
Common.KeywordsString constants for CASL keywords to be used for parsing and printing
Common.LaTeX_funsauxiliary functions for LaTeX printing
Common.LaTeX_mapsseveral tables needed for LaTeX formatting
Common.Lexerscanner for Casl tokens using Parsec
show/hideLib
Common.Lib.GraphTree-based implementation of Graph and DynGraph using Data.Map
Common.Lib.PrettyJohn Hughes's and Simon Peyton Jones's Pretty Printer Combinators
Common.Lib.RelRelations, based on maps
Common.Lib.SizedListlists with their size similar to Data.Edison.Seq.SizedSeq
Common.Lib.StateState type from Control.Monad.State but no class MonadState
Common.LibNamelibrary names for HetCASL and development graphs
Common.LogicTcolimit of an arbitrary diagram in Set
Common.OrderedMapordered maps (these keep insertion order)
Common.Partialsupport for partial orders
Common.Precprecedence checking
Common.PrintLaTeXfunctions for LaTeX pretty printing
Common.ProofTreea simple proof tree
Common.ProofUtilsfunctions useful for all prover connections in Hets
Common.ProverToolsCheck for availability of provers
Common.ResultResult monad for accumulating Diagnosis messages
Common.ResultTResultT type and a monadic transformer instance
Common.SExprS-Expressions as intermediate output format
Common.SFKT
Common.SetColimitcolimit of an arbitrary diagram in Set
Common.Taxonomytype for selecting different kinds of taxonomy graphs
Common.ToXmlxml utilities
Common.Tokenparser for CASL Ids based on Common.Lexer
Common.UniUtilswrapper for utilities from the uniform workbench
Common.Utilsutility functions that can't be found in the libraries
show/hideComorphismsvarious encodings
Comorphisms.CASL2CoCASLembedding from CASL to CoCASL
Comorphisms.CASL2CspCASL
Comorphisms.CASL2HasCASLembedding CASL into HasCASL
Comorphisms.CASL2Modalembedding from CASL to ModalCASL
Comorphisms.CASL2PCFOLcoding out subsorting
Comorphisms.CASL2PropCoding of a CASL sublogic to Propositional
Comorphisms.CASL2SubCFOLcoding out partiality
Comorphisms.CASL2TopSort
Comorphisms.CASL2VSEembedding from CASL to VSE
Comorphisms.CASL2VSEImportembedding from CASL to VSE, plus wrapping procedures with default implementations
Comorphisms.CASL2VSERefineVSE refinement as comorphism
Comorphisms.CASL_DL2CASLInclusion of CASL_DL into CASL
Comorphisms.CFOL2IsabelleHOLembedding from CASL (CFOL) to Isabelle-HOL
Comorphisms.CoCASL2CoPCFOLExtension of CASL2PCFOL to CoCASL
Comorphisms.CoCASL2CoSubCFOLExtension of CASL2SubCFOL to CoCASL
Comorphisms.CoCFOL2IsabelleHOLExtension of CFOL2IsabelleHOL to CoCASL
Comorphisms.CspCASL2Modal
Comorphisms.DFOL2CASLTranslation of first-order logic with dependent types (DFOL) to CASL
Comorphisms.DMU2OWLtranslating DMU xml to OWL
Comorphisms.GetPreludeLibread a prelude library for some comorphisms
Comorphisms.HasCASL2HasCASLtranslating executable formulas to programs
Comorphisms.HasCASL2Haskelltranslating program equations to Haskell
Comorphisms.HasCASL2IsabelleHOLold translation that is only better for case terms
Comorphisms.HasCASL2PCoClTyConsHOLcoding out subtyping
Comorphisms.Haskell2IsabelleHOLCFtranslating a Haskell subset to Isabelle HOLCF
Comorphisms.HetLogicGraphCompute graph with logics and interesting sublogics
Comorphisms.Hs2HOLCFtheory translation for the embedding comorphism from Haskell to Isabelle
Comorphisms.Hs2HOLCFaux
Comorphisms.KnownProversprovides a map of provers to their most useful composed comorphisms
Comorphisms.LogicGraphthe logic graph
Comorphisms.LogicListAssembles all the logics into a list, as a prerequisite for the logic graph
Comorphisms.Maude2CASLCoding of Maude with preorder semantics into CASL
Comorphisms.Modal2CASLwith inlined axioms
Comorphisms.MonadicHasCASLTranslationtranslating a HasCASL subset to Isabelle
Comorphisms.OWL2CASLComorphism from OWL 1.1 to CASL_Dl
Comorphisms.PCoClTyConsHOL2IsabelleHOLtranslating a HasCASL subset to Isabelle
Comorphisms.PCoClTyConsHOL2PairsInIsaHOLnormalising translation of a HasCASL subset to Isabelle
Comorphisms.PPolyTyConsHOL2IsaUtilstranslating a HasCASL subset to Isabelle
Comorphisms.Prop2CASLCoding of Propositional into CASL
Comorphisms.RelScheme2CASLComorphism from RelScheme to CASL
Comorphisms.SuleCFOL2SoftFOLCoding of a CASL subset into SoftFOL
show/hideConstraintCASL
ConstraintCASL.AS_ConstraintCASL
ConstraintCASL.ATC_ConstraintCASLgenerated Typeable, ShATermConvertible instances
ConstraintCASL.Formula
ConstraintCASL.Logic_ConstraintCASLinstance of the class Logic for ConstraintCASL
ConstraintCASL.Print_AS
ConstraintCASL.StaticAnastatic analysis for ConstraintCASL
show/hideCspCASL
CspCASL.AS_CspCASLAbstract syntax fo CspCASL
CspCASL.AS_CspCASL_ProcessAbstract syntax of CSP-CASL processes
CspCASL.ATC_CspCASLgenerated Typeable, ShATermConvertible instances
CspCASL.Comorphismsgeneric CspCASL instance for comorphisms
CspCASL.CspCASL_KeywordsCspCASL keywords to be used for parsing and printing
CspCASL.LocalTopLocal top element analysis for CspCASL specifications
CspCASL.Logic_CspCASLCspCASL instance of type class logic
CspCASL.MorphismSymbols and signature morphisms for the CspCASL logic
CspCASL.Parse_CspCASLParser for CspCASL specifications
CspCASL.Parse_CspCASL_ProcessParser for CspCASL processes
CspCASL.Print_CspCASLPretty printing for CspCASL
CspCASL.SignCSPCspCASL signatures
CspCASL.SimplifySensimplification of CspCASL sentences for output after analysis
CspCASL.StatAnaCSPStatic analysis of CspCASL
show/hideCspCASLProverInterface to the CspCASLProver (Isabelle based) theorem prover
CspCASLProver.ConstsConstants and related fucntions for CspCASLProver
CspCASLProver.CspCASLProverInterface to the CspCASLProver (Isabelle based) theorem prover
CspCASLProver.CspProverConstsIsabelle Abstract syntax constants for CSP-Prover operations
CspCASLProver.IsabelleUtilsUtilities for CspCASLProver related to Isabelle
CspCASLProver.TransProcessesProvides transformations from Csp Processes to Isabelle terms
CspCASLProver.UtilsUtilities for CspCASLProver related to the actual construction of Isabelle theories.
show/hideDFOL
DFOL.AS_DFOLAbstract syntax for first-order logic with dependent types (DFOL)
DFOL.ATC_DFOLgenerated Typeable, ShATermConvertible instances
DFOL.Analysis_DFOLStatic analysis for first-order logic with dependent types (DFOL)
DFOL.ColimitSignature colimits for first-order logic with dependent types (DFOL)
DFOL.ComorphismHelper functions for the DFOL -> CASL translation
DFOL.Logic_DFOLInstances of classes defined in Logic.hs for first-order logic with dependent types (DFOL)
DFOL.MorphismDefinition of signature morphisms for first-order logic with dependent types (DFOL)
DFOL.Parse_AS_DFOLAParser for first-order logic with dependent types (DFOL)
DFOL.SignDefinition of signatures for first-order logic with dependent types (DFOL)
DFOL.SymbolSymbol definition for first-order logic with dependent types (DFOL)
DFOL.UtilsUtilities for first-order logic with dependent types (DFOL)
show/hideDMU
DMU.Logic_DMUInstance of class Logic for DMU
show/hideDriver
Driver.AnaLibwrapper for static analysis of HetCASL
Driver.OptionsDatatypes and functions for options that hets understands.
Driver.ReadFnreading and parsing ATerms, CASL, HetCASL files
Driver.Versionmodule for the hets version string
Driver.WriteFnWriting various formats, according to Hets options
Driver.WriteLibDefnWriting out a HetCASL library
show/hideExtModal
ExtModal.AS_ExtModal
ExtModal.ATC_ExtModalgenerated Typeable, ShATermConvertible instances
ExtModal.ExtModalSign
ExtModal.Keywords
ExtModal.Logic_ExtModalInstance of class Logic for ExtModal
ExtModal.MorphismExtensionMorphism extension for modal signature morphisms
ExtModal.Parse_AS
ExtModal.Print_AS
ExtModal.StatAna
show/hideGUIgraphical user interface modules
GUI.AbstractGraphViewInterface for graph viewing and abstraction
GUI.GenericATPGeneric Prover GUI.
GUI.GraphAbstractionInterface for graph viewing and abstraction
GUI.GraphDisplayCentral GUI for Hets, with display of development graph
GUI.GraphLogicLogic for manipulating the graph in the Central GUI
GUI.GraphMenuMenu creation functions for the Graphdisplay
GUI.GraphTypesTypes for the Central GUI of Hets
GUI.HTkGenericATPGeneric Prover GUI.
GUI.HTkProofDetailsGUI for showing and saving proof details.
GUI.HTkProverGUIGoal management GUI.
GUI.HTkUtils
GUI.ProverGUIcpp choice between GUI.ProofManagement and GUI.GtkProverGUI
GUI.ShowGraph
GUI.ShowLibGraph
GUI.ShowLogicGraph
GUI.Taxonomy
GUI.UDGUtilswrapper for uDrawGraph utilities from the uniform workbench
GUI.Utilscpp choice between GUI.HTkUtils and GUI.ConsoleUtils
show/hideHasCASLhigher order CASL extension
HasCASL.ATC_HasCASLgenerated Typeable, ShATermConvertible instances
HasCASL.Asabstract syntax for HasCASL
HasCASL.AsToLefinal static analysis
HasCASL.AsUtilssome utilities for the abstract syntax
HasCASL.Builtinbuiltin types and functions
HasCASL.ClassAnaanalyse kinds using a class map
HasCASL.Constrainresolve type constraints
HasCASL.ConvertTypePatternconvert type patterns to type identifier applications
HasCASL.DataAnaanalysis of data type declarations
HasCASL.FoldTermfold functions for terms and program equations
HasCASL.FoldTypefold functions for types
HasCASL.HTokenparsers for HasCASL tokens
HasCASL.Lethe abstract syntax for analysis and final signature instance
HasCASL.Logic_HasCASLinstance of class Logic
HasCASL.MapTermrenaming according to signature morphisms
HasCASL.Mergeunion of signature parts
HasCASL.MinTypechoose a minimal type for overloaded terms
HasCASL.MixAnamixfix analysis for terms
HasCASL.Morphismmorphisms implementation
HasCASL.OpDeclanalyse operation declarations
HasCASL.ParseItemparser for HasCASL basic Items
HasCASL.ParseTermparser for HasCASL kinds, types, terms, patterns and equations
HasCASL.PrintAsprint the abstract syntax so that it can be re-parsed
HasCASL.PrintLepretty printing signatures
HasCASL.ProgEqconvert some formulas to program equations
HasCASL.RawSymraw symbol functions
HasCASL.SimplifyTermsimplify terms for prettier printing
HasCASL.SublogicHasCASL's sublogics
HasCASL.SubtypeDeclanalysis of subtype declarations
HasCASL.SymbItemparsing symbol items
HasCASL.Symbolsymbol analysis
HasCASL.SymbolMapAnalysisanalysis of symbol mappings
HasCASL.ToItemextracted annotated items for xml output from basic specs
HasCASL.TypeAnainfer the kinds of types
HasCASL.TypeChecktype checking terms and program equations
HasCASL.TypeDeclanalyse type declarations
HasCASL.TypeMixAnamanually resolve mixfix type applications
HasCASL.TypeRelcompute subtype dependencies
HasCASL.Unifygeneralized unification of types
HasCASL.VarDeclanalyse var decls
show/hideHaskell
Haskell.ATC_Haskellgenerated Typeable, ShATermConvertible instances
Haskell.BaseATCbasic ShATermConvertible instances
Haskell.CreateModulescreating Haskell modules via translations
Haskell.Haskell2DGcreate a development graph from Haskell modules
Haskell.HatAnacalling programatica's analysis
Haskell.HatParsercalling programatica's parser
Haskell.Logic_HaskellInstance of class Logic for the Haskell logic
Haskell.PreludeStringthe programatica prelude as string
Haskell.TiATCShATermConvertible instances
Haskell.TiDecorateATCShATermConvertible instances
Haskell.TiPropATCShATermConvertible instances
Haskell.TranslateIdcreate legal Haskell identifiers
Haskell.Wrapperextract Haskell code in structured specs
show/hideInterfaces
Interfaces.CmdActioncommand action associations for all interfaces
Interfaces.Commanddevelopment graph commands for all interfaces
Interfaces.DataTypesCommon Data types to be used between interfaces
Interfaces.GenericATPStateHelp functions for GUI.GenericATP
Interfaces.Historyhistory management functions
Interfaces.Utilsutilitary functions
show/hideIsabellelogic for the interactive higher order theorem prover Isabelle
Isabelle.ATC_Isabellegenerated Typeable, ShATermConvertible instances
Isabelle.CreateTheoriescreating Isabelle thoeries via translations
Isabelle.IsaConstsconstants for Isabelle terms
Isabelle.IsaParseparser for an Isabelle theory
Isabelle.IsaPrintprinting Isabelle entities
Isabelle.IsaProveinterface to the Isabelle theorem prover
Isabelle.IsaSignabstract Isabelle HOL and HOLCF syntax
Isabelle.IsaStringspredefined strings of several Isabelle logics
Isabelle.Logic_IsabelleIsabelle instance of class Logic
Isabelle.MarkSimpmark certain Isabelle sentenes for the simplifier
Isabelle.Translatecreate legal Isabelle mixfix identifier
show/hideLogicinfrastructure needed for presenting a logic to Hets
Logic.Coercecoerce logic entities dynamically
Logic.Comorphisminterface and class for logic translations
Logic.ExtSignderived functions for signatures with symbol sets
Logic.GrothendieckGrothendieck logic (flattening of logic graph to a single logic)
Logic.Logiccentral interface (type class) for logics in Hets
Logic.Modificationinterface (type class) for comorphism modifications in Hets
Logic.Morphisminterface (type class) for logic projections (morphisms) in Hets
Logic.ProverGeneral datastructures for theorem prover interfaces
Main
show/hideMaude
Maude.AS_MaudeAbstract Maude Syntax
Maude.ATC_Maudegenerated Typeable, ShATermConvertible instances
Maude.LanguageParsing the Maude Language
Maude.Logic_MaudeInstance of class Logic for Maude
Maude.Maude2DGMaude Development Graphs
show/hideMaude.MetaMeta information about Maude data types
Maude.Meta.AsSymbolViewing Maude data types as Symbols
Maude.Meta.HasLabelsAccessing the Labels of Maude data types
Maude.Meta.HasNameAccessing the names of Maude data types
Maude.Meta.HasOpsAccessing the Operators of Maude data types
Maude.Meta.HasSortsAccessing the Sorts of Maude data types
Maude.MorphismMaude Morphisms
Maude.Parseextract Maude text in structured specs
Maude.PreComorphismMaude Comorphisms
Maude.PrintingTranslation from Haskell to Maude
Maude.SentenceMaude Sentences
Maude.Shellout
Maude.SignMaude Signatures
Maude.SymbolMaude Symbols
Maude.UtilUtility Functions
show/hideModalmodal logic extension of CASL
Modal.AS_Modal
Modal.ATC_Modalgenerated Typeable, ShATermConvertible instances
Modal.Logic_ModalInstance of class Logic for Modal CASL
Modal.ModalSign
Modal.ModalSystems
Modal.Parse_AS
Modal.Print_AS
Modal.StatAna
Modal.Utils
show/hideModifications
Modifications.ModalEmbedding
show/hideOMDocbasics of the common algebraic specification language
OMDoc.ATC_OMDocgenerated Typeable, ShATermConvertible instances
OMDoc.ATermAdditional (manual) ATerm-Conversions for OMDoc
OMDoc.Base64Base64 de- and encoding
OMDoc.CASLOutputHets-to-OMDoc morphism conversion
OMDoc.ContainerGeneric handling of some data structures
OMDoc.DataTypesThe OMDoc Data Types
OMDoc.Exportexport a development graph to an omdoc structure
OMDoc.HetsDefsHets-related functions for conversion (in/out)
OMDoc.KeyDebugFunctions for selective debugging
OMDoc.Logic_OMDocRudimentary Logic-instances for OMDoc
OMDoc.OMDocDefsOMDoc-related functions for conversion (in/out)
OMDoc.OMDocInputOMDoc-to-Hets conversion
OMDoc.OMDocInterfaceHandpicked model of OMDoc subset
OMDoc.OMDocOutputHets-to-OMDoc conversion
OMDoc.OMDocXmlXML conversion for OMDoc-model (in/out)
OMDoc.SentencesHets-to-OMDoc conversion
OMDoc.UtilHelper-functions
OMDoc.XmlHandlingHXT-related functions for reading and writing XML
OMDoc.XmlInterfaceOMDoc-to/from-XML conversion
show/hideOWL
OWL.AS
OWL.ATC_OWLgenerated Typeable, ShATermConvertible instances
OWL.ColonKeywordsString constants for OWL colon keywords to be used for parsing and printing
OWL.Conservativity
OWL.KeywordsString constants for OWL keywords to be used for parsing and printing
OWL.Logic_OWLinstance of the class Logic for OWL
OWL.MorphismOWL Morphisms
OWL.Namespace
OWL.OWLAnalysis
OWL.ParseManchester syntax parser for OWL 1.1
OWL.Print
OWL.ProvePelletInterface to the OWL Ontology prover via Pellet.
OWL.ReadWrite
OWL.Sign
OWL.StaticAnalysis
OWL.StructureAnalysis
OWL.SublogicSublogics for OWL
OWL.TaxonomyTaxonomy extraction for OWL
show/hidePGIP
PGIP.XMLparsingXML processing for the CMDL interface
PGIP.XMLstateafter parsing XML message a list of XMLcommands is produced, containing commands that need to be executed
show/hideProofs
Proofs.AbstractStateState data structure used by the goal management GUI.
Proofs.Automaticautomatic proofs in the development graph calculus
Proofs.BatchProcessingBatch processing functions.
Proofs.CompositionComposition rules in the development graphs calculus
Proofs.ComputeColimitHeterogeneous colimit of the displayed graph
Proofs.Conservativityconservativity proof rule for development graphs
Proofs.DGFlatteningCentral datastructures for development graphs
Proofs.EdgeUtilsutility functions for edges of development graphs
Proofs.Globalglobal proof rules for development graphs
Proofs.HideTheoremShifthide theorem shift proof rule for development graphs
Proofs.InferBasicdevGraph rule that calls provers for specific logics
Proofs.Locallocal proof rules for development graphs
Proofs.NormalFormcompute the normal forms of all nodes in development graphs
Proofs.QualifyNamesqualify all names in the nodes of development graphs
Proofs.SimpleTheoremHideShiftsimple version of theorem hide shift proof rule
Proofs.StatusUtilsthe proof status with manipulating functions
Proofs.TheoremHideShifttheorem hide shift proof rule for development graphs
Proofs.VSEInterface to send structured theories to the VSE prover
show/hidePropositional
Propositional.AS_BASIC_PropositionalAbstract syntax for propositional logic
Propositional.ATC_Propositionalgenerated Typeable, ShATermConvertible instances
Propositional.AnalysisBasic analysis for propositional logic
Propositional.ChildMessageget the output from a childProcess
Propositional.ConservativityConservativityChecker for propositional logic
Propositional.ConversionsHelper functions for proofs in propositional logic
Propositional.Foldfolding function for propositional formulas
Propositional.Logic_PropositionalInstance of class Logic for propositional logic
Propositional.MorphismMorphisms in Propositional logic
Propositional.Parse_AS_BasicParser for basic specs
Propositional.Prop2CASLHelpersHelper functions for Prop2CASL
Propositional.Prop2CNFHelper functions for CNF translation
Propositional.ProveProvers for propositional logic
Propositional.ProveMinisatProvers for propositional logic
Propositional.ProveWithTruthTableProvers for propositional logic
Propositional.ProverStateProverState for propositional logic
Propositional.SignSignature for propositional logic
Propositional.SublogicSublogics for propositional logic
Propositional.SymbolSymbols of propositional logic
Propositional.ToolsSome additional helper functions
show/hideRelationalScheme
RelationalScheme.ASabstract syntax for Relational Schemes
RelationalScheme.ATC_RelationalSchemegenerated Typeable, ShATermConvertible instances
RelationalScheme.KeywordsKeywords for Relational Schemes
RelationalScheme.Logic_RelInstance of class Logic for Rel
RelationalScheme.ParseRSabstract syntax for Relational Schemes
RelationalScheme.Signsignaturefor Relational Schemes
RelationalScheme.StaticAnalysisstatic analysis for Relational Schemes
show/hideSoftFOLlogic for first order provers like SPASS
SoftFOL.ATC_SoftFOLgenerated Typeable, ShATermConvertible instances
SoftFOL.ConversionsFunctions to convert to internal SP* data structures.
SoftFOL.CreateDFGDocGenerating DFG Doc out of SPASS theories.
SoftFOL.DFGParserA parser for the SPASS Input Syntax
SoftFOL.Logic_SoftFOLInstance of class Logic for SoftFOL.
SoftFOL.MathServMappingMaps a MathServResponse into a prover configuration.
SoftFOL.MathServParsingFunctions for parsing MathServ output as a MathServResponse
SoftFOL.MorphismSymbol related functions for SoftFOL.
SoftFOL.ParseTPTPA parser for the TPTP Input Syntax
SoftFOL.PrintPretty printing for SoftFOL problems in DFG.
SoftFOL.PrintTPTPPretty printing for SPASS signatures in TPTP syntax.
SoftFOL.ProveDarwinInterface to the TPTP theorem prover via Darwin.
SoftFOL.ProveMathServInterface for the MathServe broker.
SoftFOL.ProveSPASSInterface for the SPASS theorem prover.
SoftFOL.ProveVampireInterface to the Vampire theorem prover via MathServe.
SoftFOL.ProverStateHelp functions for all automatic theorem provers.
SoftFOL.SignData structures representing SPASS signatures.
SoftFOL.Translateutility to create valid identifiers for atp provers
show/hideStatic
Static.AnalysisArchitecturestatic analysis of CASL architectural specifications
Static.AnalysisLibrarystatic analysis of CASL specification libraries
Static.AnalysisStructuredstatic analysis of heterogeneous structured specifications
Static.ArchDiagramData types and functions for architectural diagrams
Static.CheckGlobalContextchecking consistency of indices
Static.ComputeTheorycompute the theory of a node
Static.DGTranslationTranslation of development graphs along comorphisms
Static.DevGraphCentral datastructures for development graphs
Static.DotGraphDisplay of development graphs using Graphviz/dot
Static.GTheorytheory datastructure for development graphs
Static.PrintDevGraphpretty printing (parts of) a LibEnv
Static.ToXmlxml output of Hets development graphs
Static.WACoconeheterogeneous signatures colimits approximations
show/hideSyntax
Syntax.ADocfolder description
Syntax.AS_Architectureabstract syntax of CASL architectural specifications
Syntax.AS_Libraryabstract syntax of CASL specification libraries
Syntax.AS_Structuredabstract syntax of CASL structured specifications
Syntax.Parse_AS_Architectureparser for CASL architectural specifications
Syntax.Parse_AS_Libraryparser for CASL specification librariess
Syntax.Parse_AS_Structuredparser for CASL (heterogeneous) structured specifications
Syntax.Print_AS_Architecturepretty printing of CASL architectural specifications
Syntax.Print_AS_Librarypretty printing of CASL specification libaries
Syntax.Print_AS_Structuredpretty printing of CASL structured specifications
Syntax.ToXmlxml output of Hets specification libaries
show/hideTaxonomy
Taxonomy.MMiSSOntology
Taxonomy.MMiSSOntologyGraph
show/hideTemporal
Temporal.AS_BASIC_TemporalAbstract syntax of temporal basic specifications
Temporal.ATC_Temporalgenerated Typeable, ShATermConvertible instances
Temporal.Logic_TemporalInstance of class Logic for temporal logic
Temporal.MorphismMorphisms in Temporal logic
Temporal.SignSignature for propositional logic
Temporal.SymbolSymbols of propositional logic
show/hideVSE
VSE.ATC_VSEgenerated Typeable, ShATermConvertible instances
VSE.Anastatic analysis of VSE parts
VSE.Asabstract syntax of VSE programs and dynamic logic
VSE.Foldfolding functions for VSE progams
VSE.Logic_VSEthe incomplete Logic instance for VSE
VSE.Parseparsing VSE parts
VSE.ProveInterface to the VSE prover
VSE.ToSExprtranslate VSE to S-Expressions
Produced by Haddock version 2.4.2