Class CLawParser


  • public class CLawParser
    extends Parser<CActionDescription,​Formula>
    This class implements a parser for causal laws in C. The BNF of such rules is given by: (starting symbol is DESC)

    DESC ::== LAW ("\n" LAW)*
    LAW ::== STATICLAW | DYNAMICLAW
    STATICLAW ::== "caused" FOLFORMULA ("if" FOLFORMULA)? ("requires" REQUIREMENTS)?
    DYNAMICLAW ::== "caused" FOLFORMULA ("if" FOLFORMULA)? "after" FOLFORMULA ("requires" REQUIREMENTS)?
    REQUIREMENTS ::== REQUIREMENT ("," REQUIREMENT)*
    REQUIREMENT ::== (VARIABLENAME "<>" VARIABLENAME | VARIABLENAME "<>" CONSTANTNAME)*
    where FOLFORMULA is an unquantified first-order formula without functors,
    and VARIABLENAME, CONSTANTNAME are sequences of symbols
    from {a,...,z,A,...,Z,0,...,9} with a letter at the beginning.
    Author:
    Sebastian Homann
    • Constructor Detail

      • CLawParser

        public CLawParser​(ActionSignature signature)
        This parser needs a valid action signature to parse causal laws.
        Parameters:
        signature - some signature