The reified-NAT maintenance the write paths run once their own work is done:
reconcile-assert after a sentence is stored, reconcile-revivals!,
collect-orphans! and reconcile-formula-positions after a teardown. Requires nat, context-nat, chain, resolution and settle; the
teardown entry point retract! is an argument, since the engine never requires
vaelii.core. See docs/nat.md and docs/context-nat.md.
The reified-NAT maintenance the write paths run once their own work is done: `reconcile-assert` after a sentence is stored, `reconcile-revivals!`, `collect-orphans!` and `reconcile-formula-positions` after a teardown. Requires `nat`, `context-nat`, `chain`, `resolution` and `settle`; the teardown entry point `retract!` is an argument, since the engine never requires `vaelii.core`. See docs/nat.md and docs/context-nat.md.
(collect-orphans! kb retract!)(collect-orphans! kb sink retract!)Re-spell the uses a removed natFormula map left naming its constant
(respell-stranded!) and the rules a removed correspondence declaration respelled
(respell-corresponded!), then collect the reified constants a teardown orphaned
(docs/nat.md, Rename and remove). retract! and edit!, and the rollback of a single
refused assert, pass their removal record sink; rollback-batch! passes none, and
the sweep asks the whole KB. The sweep runs only when nat/any-reified-constants?
holds. Neither runs inside the sweep's own retractions.
Re-spell the uses a removed `natFormula` map left naming its constant (`respell-stranded!`) and the rules a removed correspondence declaration respelled (`respell-corresponded!`), then collect the reified constants a teardown orphaned (docs/nat.md, Rename and remove). `retract!` and `edit!`, and the rollback of a single refused `assert`, pass their removal record `sink`; `rollback-batch!` passes none, and the sweep asks the whole KB. The sweep runs only when `nat/any-reified-constants?` holds. Neither runs inside the sweep's own retractions.
(reconcile-assert kb sentence context opts)The reified-NAT maintenance a just-stored sentence calls for, run after its own
chaining has settled: nat/reconcile-nats!, the rules a correspondence declaration
respells (respell-corresponded!), then the structural genlCx edges
context-nat/reconcile-genlCx builds, settled, behind nat/any-reified-constants?;
and on every KB the rules a formula position it moves holds or releases
(reconcile-formula-positions). context and opts are the assert's.
The reified-NAT maintenance a just-stored `sentence` calls for, run after its own chaining has settled: `nat/reconcile-nats!`, the rules a correspondence declaration respells (`respell-corresponded!`), then the structural `genlCx` edges `context-nat/reconcile-genlCx` builds, settled, behind `nat/any-reified-constants?`; and on every KB the rules a `formula` position it moves holds or releases (`reconcile-formula-positions`). `context` and `opts` are the assert's.
(reconcile-formula-positions kb sentences)Re-decide the hold of the rules a formula position moved by the stored or removed
sentences decides (nat/formula-declared-predicates,
chain/reconcile-formula-positions!, docs/nat.md, The corresponding predicate), then
re-chain what that made and settle.
Re-decide the hold of the rules a `formula` position moved by the stored or removed `sentences` decides (`nat/formula-declared-predicates`, `chain/reconcile-formula-positions!`, docs/nat.md, The corresponding predicate), then re-chain what that made and settle.
(reconcile-revivals! kb)Rebuild the structural genlCx edges whose premises a teardown revived, and settle
what it built (context-nat/reconcile-revivals, docs/context-nat.md). Runs only when
the KB declares a context function, which it checks itself.
Rebuild the structural `genlCx` edges whose premises a teardown revived, and settle what it built (`context-nat/reconcile-revivals`, docs/context-nat.md). Runs only when the KB declares a context function, which it checks itself.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |