I’m considering adding some events to a Prolog API pertaining to change detection and propagation. I’m thinking about change detection and propagation where, upon assertions or retractions, all direct and indirect changes could be detected.
There could be some new API to subscribe to such direct and indirect changes to a Prolog knowledgebase. There could also be a new type of Prolog query which, after completion of a traditional query, could present an event with which to notify a caller in the event of updates. The result of a query could interface as an observable collection (see also: ObservableCollection, INotifyCollectionChanged, Bindable LINQ, Continuous LINQ, Reactive LINQ).
Does anyone know of any research into change detection and propagation with Prolog knowledgebases?