sbt.internal.util.logic

Members list

Type members

Classlikes

final case class Atom(label: String) extends Literal

A variable with name label.

A variable with name label.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Literal
class Formula
class Object
trait Matchable
class Any
Show all
final case class Clause(body: Formula, head: Set[Atom])

When the body Formula succeeds, atoms in head are true.

When the body Formula succeeds, atoms in head are true.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class Clauses(clauses: List[Clause])

Disjunction (or) of the list of clauses.

Disjunction (or) of the list of clauses.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
sealed abstract class Formula

A formula consists of variables, negation, and conjunction (and). (Disjunction is not currently included- it is modeled at the level of a sequence of clauses. This is less convenient when defining clauses, but is not less powerful.)

A formula consists of variables, negation, and conjunction (and). (Disjunction is not currently included- it is modeled at the level of a sequence of clauses. This is less convenient when defining clauses, but is not less powerful.)

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class And
object True.type
class Literal
class Atom
class Negated
object Formula

Attributes

Companion
class
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
Formula.type
sealed abstract class Literal extends Formula

A literal is an Atom or its negation (Negated).

A literal is an Atom or its negation (Negated).

Attributes

Supertypes
class Formula
class Object
trait Matchable
class Any
Known subtypes
class Atom
class Negated
object Logic

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Logic.type
final case class Negated(atom: Atom) extends Literal

A negated atom, in the sense of negation as failure, not logical negation. That is, it is true if atom is not known/defined.

A negated atom, in the sense of negation as failure, not logical negation. That is, it is true if atom is not known/defined.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Literal
class Formula
class Object
trait Matchable
class Any
Show all