The functional_at_instant audit: a moment where two fluent values of one subject hold,
read on demand. vaelii.core delegates to it. See docs/time.md,
"Functionality at an instant", and docs/namespaces.md, "The layering".
The `functional_at_instant` audit: a moment where two fluent values of one subject hold, read on demand. `vaelii.core` delegates to it. See docs/time.md, "Functionality at an instant", and docs/namespaces.md, "The layering".
(all-functional-at-instant-violations kb context)Every (functional_at_instant f) declaration visible in context, audited, as
{f #{violation …} …}; a declaration that clashes nowhere is omitted.
Every `(functional_at_instant f)` declaration visible in `context`, audited, as
`{f #{violation …} …}`; a declaration that clashes nowhere is omitted.(functional-at-instant-violations kb f context)The per-instant clashes of one (functional_at_instant f) declaration in context, as a
set of maps {:function f :subject s :instant t :values #{v …} :kind k} — one per
moment t at which more than one distinct value of f holds for one subject s. :kind
is :merge when every clashing value is a symbol (the pair functional would merge) and
:contradiction otherwise (two numbers or strings functional refuses outright).
The candidate moments are the time_point members, the later moment of each
instantBefore pair and the moment of each happens fact ask answers in context
(docs/time.md, "Functionality at an instant"). holdsAt is asked of each filler at
each. The read follows belief and is scoped to context.
The per-instant clashes of one `(functional_at_instant f)` declaration in `context`, as a
set of maps `{:function f :subject s :instant t :values #{v …} :kind k}` — one per
moment `t` at which more than one distinct value of `f` holds for one subject `s`. `:kind`
is `:merge` when every clashing value is a symbol (the pair `functional` would merge) and
`:contradiction` otherwise (two numbers or strings `functional` refuses outright).
The candidate moments are the `time_point` members, the later moment of each
`instantBefore` pair and the moment of each `happens` fact `ask` answers in `context`
(docs/time.md, "Functionality at an instant"). `holdsAt` is asked of each filler at
each. The read follows belief and is scoped to `context`.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 |