Class MlParser
java.lang.Object
org.tweetyproject.commons.Parser<MlBeliefSet,RelationalFormula>
org.tweetyproject.logics.ml.parser.MlParser
This class implements a parser for modal logic. 
 
 The BNF for a modal knowledge base is given by (starting symbol is KB)
 
 
KB ::== SORTSDEC DECLAR FORMULAS
DECLAR ::== (FUNCTORDEC | PREDDEC)*
SORTSDEC ::== ( SORTNAME "=" "{" (CONSTANTNAME ("," CONSTANTNAME)*)? "}" "\n" )*
PREDDEC ::== "type" "(" PREDICATENAME ("(" SORTNAME ("," SORTNAME)* ")")? ")" "\n"
FUNCTORDEC ::== "type" "(" SORTNAME "=" FUNCTORNAME "(" (SORTNAME ("," SORTNAME)*)? ")" ")" "\n"
FORMULAS ::== ( "\n" FORMULA)*
FORMULA ::== ATOM | "forall" VARIABLENAME ":" "(" FORMULA ")" | "exists" VARIABLENAME ":" "(" FORMULA ")" |
"(" FORMULA ")" | FORMULA "&&" FORMULA | FORMULA "||" FORMULA | "!" FORMULA | "+" | "-" |
FORMULA "=>" FORMULA | FORMULA "<=>" FORMULA | FORMULA "==" FORMULA | FORMULA "/==" FORMULA |
"[]" "(" FORMULA ")" | "<>" "(" FORMULA ")" | FORMULA "^^" FORMULA
ATOM ::== PREDICATENAME ("(" TERM ("," TERM)* ")")?
TERM ::== VARIABLENAME | CONSTANTNAME | FUNCTORNAME "(" (TERM ("," TERM)*)? ")"
 
 
where SORTNAME, PREDICATENAME, CONSTANTNAME, and FUNCTORNAME are sequences of
symbols from {a,...,z,A,...,Z,0,...,9} with a letter at the beginning and VARIABLENAME
is a sequence of symbols from {a,...,z,A,...,Z,0,...,9} with an uppercase letter at the beginning.
 
Note: Equality/Inequality predicates ("==" and "/==") can only be parsed if the parser is given a FolSignature
with the containsEquality attribute enabled (which is not the case by default).
KB ::== SORTSDEC DECLAR FORMULAS
DECLAR ::== (FUNCTORDEC | PREDDEC)*
SORTSDEC ::== ( SORTNAME "=" "{" (CONSTANTNAME ("," CONSTANTNAME)*)? "}" "\n" )*
PREDDEC ::== "type" "(" PREDICATENAME ("(" SORTNAME ("," SORTNAME)* ")")? ")" "\n"
FUNCTORDEC ::== "type" "(" SORTNAME "=" FUNCTORNAME "(" (SORTNAME ("," SORTNAME)*)? ")" ")" "\n"
FORMULAS ::== ( "\n" FORMULA)*
FORMULA ::== ATOM | "forall" VARIABLENAME ":" "(" FORMULA ")" | "exists" VARIABLENAME ":" "(" FORMULA ")" |
"(" FORMULA ")" | FORMULA "&&" FORMULA | FORMULA "||" FORMULA | "!" FORMULA | "+" | "-" |
FORMULA "=>" FORMULA | FORMULA "<=>" FORMULA | FORMULA "==" FORMULA | FORMULA "/==" FORMULA |
"[]" "(" FORMULA ")" | "<>" "(" FORMULA ")" | FORMULA "^^" FORMULA
ATOM ::== PREDICATENAME ("(" TERM ("," TERM)* ")")?
TERM ::== VARIABLENAME | CONSTANTNAME | FUNCTORNAME "(" (TERM ("," TERM)*)? ")"
where SORTNAME, PREDICATENAME, CONSTANTNAME, and FUNCTORNAME are sequences of
symbols from {a,...,z,A,...,Z,0,...,9} with a letter at the beginning and VARIABLENAME
is a sequence of symbols from {a,...,z,A,...,Z,0,...,9} with an uppercase letter at the beginning.
Note: Equality/Inequality predicates ("==" and "/==") can only be parsed if the parser is given a FolSignature
with the containsEquality attribute enabled (which is not the case by default).
- Author:
 - Matthias Thimm, Anna Gessler
 
- 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionReturns the signature of this parser.parseBeliefBase(Reader reader)Parses the given reader into a belief base of the given type.parseFormula(Reader reader)Parses the given reader into a formula of the given type.voidsetSignature(FolSignature signature)Sets the signature for this parser.Methods inherited from class org.tweetyproject.commons.Parser
isNumeric, parseBeliefBase, parseBeliefBaseFromFile, parseFormula, parseFormulaFromFile, parseListOfBeliefBases, parseListOfBeliefBases, parseListOfBeliefBasesFromFile, parseListOfBeliefBasesFromFile 
- 
Constructor Details
- 
MlParser
public MlParser() 
 - 
 - 
Method Details
- 
parseBeliefBase
Description copied from class:ParserParses the given reader into a belief base of the given type.- Specified by:
 parseBeliefBasein classParser<MlBeliefSet,RelationalFormula>- Parameters:
 reader- a reader- Returns:
 - a belief base
 - Throws:
 IOException- if some IO issue occurred.ParserException- some parsing exceptions may be added here.
 - 
parseFormula
Description copied from class:ParserParses the given reader into a formula of the given type.- Specified by:
 parseFormulain classParser<MlBeliefSet,RelationalFormula>- Parameters:
 reader- a reader- Returns:
 - a formula
 - Throws:
 IOException- if some IO issue occurred.ParserException- some parsing exceptions may be added here.
 - 
setSignature
Sets the signature for this parser.- Parameters:
 signature- a fol signature.
 - 
getSignature
Returns the signature of this parser.- Returns:
 - the signature of this parser.
 
 
 -