Module Literal


module Literal: sig .. end
Literals.

I.e. P_n, P_n+1, P_1, P_i, ~P_i, ~P_1, etc.


Author(s): Vincent Aravantinos


type t 

Constructors

val neg : Proposition.t -> Indexes.t -> t
A negative literal (i.e. of the form ~P_e)

A positive literal (i.e. of the form P_e)

val pos : Proposition.t -> Indexes.t -> t

Selectors

val atom_of : t -> Proposition.t * Indexes.t
Returns the pair (prop,idx) i.e. forget the sign of the literal
val prop_of : t -> Proposition.t
val idx_of : t -> Indexes.t
val is_pos : t -> bool
val is_neg : t -> bool

Printing

val to_string : t -> string
val compare : t -> t -> int
Comparisons

val equal : t -> t -> bool

Substitutions

val compute_lit : t -> int -> t
Standard substitution of parameters
include Substitution.Substituable
module PropSubs: Substitution.Substituable  with type substituable = t and type term = Proposition.t and type variable = Proposition.t
"Propositional variable Substitution", a module to allow substitution of propositional variables by other propositional variables.
module LoopingMap: Looping.LoopingMap  with type loopable = t
Looping

Closure

module ClosureSet: sig .. end
To detect application of closure rule (rather) efficiently

Others

val opposite : t -> t