Object

util.sat

NNF

Related Doc: package sat

Permalink

object NNF

Propositional logic in negation-normal-form.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. NNF
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class And(kids: List[Expr]) extends Expr with Product with Serializable

    Permalink

    Conjunction of expressions.

  2. case class Atom(id: Int) extends Literal with Product with Serializable

    Permalink

    An atom, ie a free proposition.

  3. sealed trait Expr extends AnyRef

    Permalink

    Abstract base type for all NNF expressions.

  4. case class Ite(kid1: Expr, kid2: Expr, kid3: Expr) extends Expr with Product with Serializable

    Permalink

    Conditional selection.

  5. sealed trait Literal extends Expr

    Permalink

    Abstract type for literals, ie Atom or the Not of an atom.

  6. case class Not(kid1: Atom) extends Literal with Product with Serializable

    Permalink

    Negation (only over an atom since we're in Negation Normal Form).

  7. case class Or(kids: List[Expr]) extends Expr with Product with Serializable

    Permalink

    Disjunction.

  8. class ToNNF extends (Core.Expr) ⇒ Expr

    Permalink

    Translator from Core to NNF.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def freshAtom(): Atom

    Permalink

    Creates a fresh uniquely identified atom.

  10. def genDepGraph(e: Expr): DepGraphE { type A = util.sat.NNF.Expr }

    Permalink

    Builds the dependency graph of an expression (frome leaves to top node).

  11. def genInverseDepGraph(e: Expr): DepGraphE { type A = util.sat.NNF.Expr }

    Permalink

    Builds the inverse dependency graph of an expression (from top node to leaves).

  12. def genIsInProperTree(e: Expr, ctx: Map[Expr, Boolean] = IMap()): (DepGraphE { type A = util.sat.NNF.Expr }, Map[Expr, Boolean])

    Permalink

    returns

    A map associating to each sub expression of the expression a boolean flag true iff the sub expression is in a proper subtree tree wrt the root of the expression.

  13. def genIsMonotonic(e: Expr, ctx: Map[Expr, Boolean] = IMap()): (DepGraphE { type A = util.sat.NNF.Expr }, Map[Expr, Boolean])

    Permalink

    TODO fix bug in the way this flag is computed, introduce notion of polarity with monotony.

    TODO fix bug in the way this flag is computed, introduce notion of polarity with monotony.

    returns

    A map associating to each sub expression of the expression a boolean flagtrue iff the sub expression has a montonic influence wrt the root of the expression.

  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  21. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  22. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped