MutableProblogTheory

Represents a logic Theory suitable for the representation of probabilistic logic clauses using Problog's notation, in which the probability is annotated on clauses and facts. Instances of this interface must be mutable.

This is the mutable counterpart of ProblogTheory: see that interface's documentation for how ProbLog's annotated clauses, facts and evidence are represented and rewritten internally. Every assertA/assertZ/ retract/retractAll/abolish operation here applies the same clause-mapping logic to newly-added or removed clauses.

Author

Jason Dellaluce

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
abstract val clauses: Iterable<Clause>
Link copied to clipboard
Link copied to clipboard
abstract val isEmpty: Boolean
Link copied to clipboard
open override val isMutable: Boolean
Link copied to clipboard
abstract val isNonEmpty: Boolean
Link copied to clipboard
open val rules: Iterable<Rule>
Link copied to clipboard
abstract val size: Long
Link copied to clipboard
abstract val tags: Map<String, Any>
Link copied to clipboard
abstract val unificator: Unificator

Functions

Link copied to clipboard
abstract override fun abolish(indicator: Indicator): MutableProblogTheory
Link copied to clipboard
abstract override fun assertA(clause: Clause): MutableProblogTheory
open override fun assertA(struct: Struct): MutableProblogTheory
abstract override fun assertA(clauses: Iterable<Clause>): MutableProblogTheory
abstract override fun assertA(clauses: Sequence<Clause>): MutableProblogTheory
Link copied to clipboard
abstract override fun assertZ(clause: Clause): MutableProblogTheory
open override fun assertZ(struct: Struct): MutableProblogTheory
abstract override fun assertZ(clauses: Iterable<Clause>): MutableProblogTheory
abstract override fun assertZ(clauses: Sequence<Clause>): MutableProblogTheory
Link copied to clipboard
abstract fun clone(): MutableTheory
Link copied to clipboard
abstract operator fun contains(clause: Clause): Boolean
abstract operator fun contains(indicator: Indicator): Boolean
abstract operator fun contains(head: Struct): Boolean
Link copied to clipboard
open fun containsTag(name: String): Boolean
Link copied to clipboard
abstract fun equals(other: Theory, useVarCompleteName: Boolean): Boolean
Link copied to clipboard
abstract operator fun get(clause: Clause): Sequence<Clause>
abstract operator fun get(indicator: Indicator): Sequence<Rule>
abstract operator fun get(head: Struct): Sequence<Rule>
Link copied to clipboard
open fun <T : Any> getTag(name: String): T?
Link copied to clipboard
abstract operator fun iterator(): Iterator<Clause>
Link copied to clipboard
open operator override fun plus(clause: Clause): MutableProblogTheory
abstract operator override fun plus(theory: ProblogTheory): MutableProblogTheory
abstract operator override fun plus(theory: Theory): MutableProblogTheory
Link copied to clipboard
abstract fun replaceTags(tags: Map<String, Any>): MutableTheory
Link copied to clipboard
abstract override fun retract(clause: Clause): RetractResult<MutableProblogTheory>
abstract override fun retract(clauses: Iterable<Clause>): RetractResult<MutableProblogTheory>
abstract override fun retract(clauses: Sequence<Clause>): RetractResult<MutableProblogTheory>
Link copied to clipboard
abstract override fun retractAll(clause: Clause): RetractResult<MutableProblogTheory>
Link copied to clipboard
abstract fun setUnificator(unificator: Unificator): MutableTheory
Link copied to clipboard
open override fun toImmutableTheory(): ProblogTheory
Link copied to clipboard
Link copied to clipboard
abstract fun toString(asPrologText: Boolean): String