Predicates
This section describes the predicate types available in this package.
MathematicalPredicates.Predicate — TypePredicate{N}The abstract supertype of predicates.
MathematicalPredicates.evaluate — Functionevaluate(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 — TypeAtom{N, T} <: Predicate{N}An atomic predicate of arity N.
Fields
p– Julia predicate
Negation
MathematicalPredicates.Negation — TypeNegation{N, T<:Predicate{N}} <: Predicate{N}A negation of a predicate of arity N.
Fields
p– predicate
Conjunction
MathematicalPredicates.Conjunction — TypeConjunction{N, VT<:AbstractVector{<:Tuple{<:Predicate, <:AbstractVector{Int}}}} <: Predicate{N}A conjunction of predicates of arity N.
Fields
conjuncts– vector of conjuncts
Disjunction
MathematicalPredicates.Disjunction — TypeDisjunction{N, VT<:AbstractVector{<:Tuple{<:Predicate, <:AbstractVector{Int}}}} <: Predicate{N}A disjunction of predicates of arity N.
Fields
disjuncts– vector of disjuncts