Class HerbrandBase


  • public class HerbrandBase
    extends Object
    The Herbrand base is the set of all possible ground atoms of some given first-order logic.
    NOTE: We only allow to define a Herbrand base for signatures without function symbols.
    Author:
    Matthias Thimm
    • Constructor Detail

      • HerbrandBase

        public HerbrandBase​(FolSignature sig)
                     throws IllegalArgumentException
        Creates a new Herbrand base for the given signature.
        NOTE: We only allow to define a Herbrand base for signatures without function symbols.
        Parameters:
        sig - the underlying first-order signature for this Herbrand base. There should be no functors defined in "sig"
        Throws:
        IllegalArgumentException - if "sig" contains a functor.
    • Method Detail

      • getAllHerbrandInterpretations

        public Set<HerbrandInterpretation> getAllHerbrandInterpretations()
        Computes all possible Herbrand interpretations of this Herbrand base, i.e. all possible subsets of this Herbrand base.
        Returns:
        all possible Herbrand interpretations of this Herbrand base, i.e. all possible subsets of this Herbrand base.
      • getAtoms

        public Set<FolAtom> getAtoms()
        Returns all atoms of this Herbrand base.
        Returns:
        all atoms of this Herbrand base.