Predicates
This section describes the predicate types available in this package.
MathematicalPredicates.Predicate — Type
Predicate{N}The abstract supertype of predicates.
MathematicalPredicates.evaluate — Function
evaluate(p::Predicate, args...)Evaluate a predicate for given arguments.
Input
p– predicateargs– argument list
Output
A Bool corresponding to the evaluation of p(args).
Notes
We offer p(args) as a short-hand version of evaluate(p, args).
Atom
MathematicalPredicates.Atom — Type
Atom{N, T} <: Predicate{N}An atomic predicate of arity N.
Fields
p– Julia predicate
Negation
MathematicalPredicates.Negation — Type
Negation{N, T<:Predicate{N}} <: Predicate{N}A negation of a predicate of arity N.
Fields
p– predicate
Conjunction
MathematicalPredicates.Conjunction — Type
Conjunction{N, VT<:AbstractVector{<:Tuple{<:Predicate, <:AbstractVector{Int}}}} <: Predicate{N}A conjunction of predicates of arity N.
Fields
conjuncts– vector of conjuncts
Disjunction
MathematicalPredicates.Disjunction — Type
Disjunction{N, VT<:AbstractVector{<:Tuple{<:Predicate, <:AbstractVector{Int}}}} <: Predicate{N}A disjunction of predicates of arity N.
Fields
disjuncts– vector of disjuncts