Class SuokifVisitor

java.lang.Object
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<String>
com.articulate.sigma.parsing.SuokifVisitor
All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<String>

public class SuokifVisitor extends org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<String>
  • Field Details

  • Constructor Details

    • SuokifVisitor

      public SuokifVisitor()
  • Method Details

    • parseFile

      public static SuokifVisitor parseFile(File fname)
      Parse SUO-KIF from a file
      Parameters:
      fname - the path to a file containing SUO-KIF
      Returns:
      an instance for accessing a Map that should have a single formula
    • parseString

      public static SuokifVisitor parseString(String input)
      Parse a single formula and use this SuokifVisitor to process as the cached information for the formula.
      Parameters:
      input - the String containing SUO-KIF to process
      Returns:
      an instance for accessing a Map that should have a single formula
    • parseFormula

      public static SuokifVisitor parseFormula(Formula input)
      Parse a single formula and use this SuokifVisitor to process as the cached information for the formula. Copy the formula meta-data to the new formulas.
      Parameters:
      input - the Formula containing SUO-KIF to process
      Returns:
      an instance for accessing a Map that should have a single formula
    • addToKeys

      public void addToKeys(String k, FormulaAST f)
    • generateRuleKeys

      public void generateRuleKeys(FormulaAST f)
    • generateNonRuleKeys

      public void generateNonRuleKeys(FormulaAST f)
    • visitFile

      public void visitFile(com.articulate.sigma.parsing.SuokifParser.FileContext context)
      file : (sentence | comment)+ EOF ; Fill maps that represent each statement or comment in the same order as the file. Note that comments at the end of a SUO-KIF line that include a statement are recorded as occurring on the next line
    • visitSentence

      public FormulaAST visitSentence(com.articulate.sigma.parsing.SuokifParser.SentenceContext context)
      sentence : (relsent | logsent | quantsent | variable) ;
    • visitComment

      public FormulaAST visitComment(com.articulate.sigma.parsing.SuokifParser.CommentContext context)
    • visitRelsent

      public FormulaAST visitRelsent(com.articulate.sigma.parsing.SuokifParser.RelsentContext context)
      relsent : ('(' IDENTIFIER argument+ ')') | ('(' variable argument+ ')') ; argument : (sentence | term) ; term : (funterm | variable | string | number | FUNWORD | IDENTIFIER ) ; Set the types of any variables that appear in an instance or subclass declaration
    • visitArgument

      public FormulaAST visitArgument(com.articulate.sigma.parsing.SuokifParser.ArgumentContext context)
      argument : (sentence | term) ;
    • visitLogsent

      public FormulaAST visitLogsent(com.articulate.sigma.parsing.SuokifParser.LogsentContext context)
      logsent : (notsent | andsent | orsent | xorsent | implies | iff | eqsent) ;
    • visitNotsent

      public FormulaAST visitNotsent(com.articulate.sigma.parsing.SuokifParser.NotsentContext context)
      notsent : '(' 'not' sentence ')' ;
    • visitAndsent

      public FormulaAST visitAndsent(com.articulate.sigma.parsing.SuokifParser.AndsentContext context)
      andsent : '(' 'and' sentence sentence+ ')' ;
    • visitOrsent

      public FormulaAST visitOrsent(com.articulate.sigma.parsing.SuokifParser.OrsentContext context)
      orsent : '(' 'or' sentence sentence+ ')' ;
    • visitXorsent

      public FormulaAST visitXorsent(com.articulate.sigma.parsing.SuokifParser.XorsentContext context)
      xorsent : '(' 'xor' sentence sentence+ ')' ;
    • visitImplies

      public FormulaAST visitImplies(com.articulate.sigma.parsing.SuokifParser.ImpliesContext context)
      implies : '(' '=>' sentence sentence ')' ;
    • visitIff

      public FormulaAST visitIff(com.articulate.sigma.parsing.SuokifParser.IffContext context)
      iff : '(' 'invalid input: '<'=>' sentence sentence ')' ;
    • visitEqsent

      public FormulaAST visitEqsent(com.articulate.sigma.parsing.SuokifParser.EqsentContext context)
      eqsent : '(' 'equal' term term ')' ; argument : (sentence | term) ; term : (funterm | variable | string | number | FUNWORD | IDENTIFIER ) ;
    • visitQuantsent

      public FormulaAST visitQuantsent(com.articulate.sigma.parsing.SuokifParser.QuantsentContext context)
      quantsent : (forall | exists) ;
    • visitForall

      public FormulaAST visitForall(com.articulate.sigma.parsing.SuokifParser.ForallContext context)
      forall : '(' 'forall' '(' variable+ ')' sentence ')' ;
    • visitExists

      public FormulaAST visitExists(com.articulate.sigma.parsing.SuokifParser.ExistsContext context)
      exists : '(' 'exists' '(' variable+ ')' sentence ')' ;
    • visitVariable

      public FormulaAST visitVariable(com.articulate.sigma.parsing.SuokifParser.VariableContext context)
      variable : (REGVAR | ROWVAR) ;
    • visitTerm

      public FormulaAST visitTerm(com.articulate.sigma.parsing.SuokifParser.TermContext context)
      term : (funterm | variable | string | number | FUNWORD | IDENTIFIER ) ;
    • visitFunterm

      public FormulaAST visitFunterm(com.articulate.sigma.parsing.SuokifParser.FuntermContext context)
      funterm : '(' FUNWORD argument+ ')' ;
    • visitString

      public FormulaAST visitString(com.articulate.sigma.parsing.SuokifParser.StringContext context)
    • visitNumber

      public FormulaAST visitNumber(com.articulate.sigma.parsing.SuokifParser.NumberContext context)
    • showHelp

      public static void showHelp()
    • main

      public static void main(String[] args)