Interface Postulate<S extends Formula>

  • Type Parameters:
    S - The type of formulas this postulate is about.

    public interface Postulate<S extends Formula>
    Models a general (rationality) postulate, i.e. a property that can be satisfied or violated by some approach. This class contains methods for checking whether an approach satisfies certain instances wrt. this postulate.
    Author:
    Matthias Thimm
    • Method Summary

      Modifier and Type Method Description
      String getName()
      The textual name of the postulate
      boolean isApplicable​(Collection<S> kb)
      Checks whether the given kb represents a non-trivial instance for this postulate, i.e., whether assumptions of this postulates are satisfied (evaluating an approach on a non-applicable instance always succeeds).
      boolean isSatisfied​(Collection<S> kb, PostulateEvaluatable<S> ev)
      Checks whether this postulate is satisfied by the given approach ev wrt.
    • Method Detail

      • isApplicable

        boolean isApplicable​(Collection<S> kb)
        Checks whether the given kb represents a non-trivial instance for this postulate, i.e., whether assumptions of this postulates are satisfied (evaluating an approach on a non-applicable instance always succeeds).
        Parameters:
        kb - some knowledge base
        Returns:
        true if the knowledge base is a non trivial instance of this postulate.
      • isSatisfied

        boolean isSatisfied​(Collection<S> kb,
                            PostulateEvaluatable<S> ev)
        Checks whether this postulate is satisfied by the given approach ev wrt. the given instance kb (note that evaluating an approach on a non-applicable instance always succeeds).
        Parameters:
        kb - some knowledge base
        ev - some approach
        Returns:
        true if the postulate is satisfied on the instance
      • getName

        String getName()
        The textual name of the postulate
        Returns:
        a string