Added stuff on located propositions, and some notes.

This commit is contained in:
Simon Brooke 2020-05-05 09:44:38 +01:00
parent 5ff46a5e84
commit 1ab637812b
3 changed files with 70 additions and 1 deletions

View file

@ -270,6 +270,40 @@ are still further strengthened.
In proposing a formalism to express propositions, we need to consider how In proposing a formalism to express propositions, we need to consider how
it allows this freight to be unpacked. it allows this freight to be unpacked.
### Universally located and unlocated propositions
In the last passage, I observed that if we had multiple competing reported locations at which Caesar was said to have been killed, then there was nevertheless agreement on the fact that Caesar had been killed; so while we might be in doubt about whether the death had happened in March or June, there's much less doubt that the death happened.
So we have a hierarchy of confidence in the propositions:
1. We're reasonably certain that Caesar was killed;
2. We may think it probable that he was killed in March, since we have two independent sources for this;
3. We're probably more skeptical that he was killed in April, since the report is second hand and since it's inconsistent with the others.
Of these, the first proposition is not located in time. There must have been an event, but we don't know when it was. Strictly, of course, we could in this case assign a broad event - 'the spring' - but what I want to talk about here is cases of things which we believe have happened, but do not know when. The reason I want to talk about them is to draw a clear distinction between unlocated propositions, and universally located propositions.
A universally located proposition is something like
* Water is wet.
Or, to use a more classical example,
* Socrates is a man.
For the purposes of the pedagogy of logic, Socrates is always and everywhere a man. His manliness is universally located; thus the proposition 'Socrates is a man' is always deemed to be true. Consider the proposition 'Socrates was hungry'. This is also, almost certainly true. But he wasn't hungry for all time, he was hungry at most for short periods during his lifetime. There's an important disctinction between
* Socrates is a man
and
* Socrates was hungry
and we need to make that explicit, so that we know whether we're asserting an unlocated proposition or a universal one. I'm going to elect that it is the universal that should always be explicitly stated, so we have
* Water is wet in the universe in all time;
* Socrates is a man in the universe in all time;
* Socrates was hungry.
#### Proposition minimisation #### Proposition minimisation
{ **TODO**: probably lose this. I increasingly think that, whatever the internal representation of the proposition within the advocate or knowledge base, the proposition as passed around must *always* be minimised. This is, in any case, very much an implementation detail. } { **TODO**: probably lose this. I increasingly think that, whatever the internal representation of the proposition within the advocate or knowledge base, the proposition as passed around must *always* be minimised. This is, in any case, very much an implementation detail. }

27
doc/Scratchpad.md Normal file
View file

@ -0,0 +1,27 @@
# Scratchpad: Working notes, not part of the main document
## A supporting context
Bialowieza is probably never going to be part of an actual game engine, and is probably always just an experimentation platform/proof of concept demonstrator. However, it would be good to get up to a point where we could
1. Analyse a corpus of text to extract knowledge;
2. Query that knowledge in a reasonable verisimilitude of natural language;
3. Accept those queries through a spoken word rather than typed interface;
4. Speak the responses in reasonably natural language.
Components which would help with this (I don't need to reinvent **all** the wheels:
### Text analysis
(Supports both 1. and 2. above):
1. [OpenNLP](https://github.com/dakrone/clojure-opennlp)
2. [Agents for Actors](https://github.com/mwkuster/agents-for-actors)
### Speech recognition
1. [speech-recognition](https://github.com/klutometis/speech-recognition)
2.
### Text to speech

View file

@ -4,7 +4,15 @@
Hierarchical databases seem a very natural fit for how we're storing Hierarchical databases seem a very natural fit for how we're storing
knowledge. Mongo DB seems a particularly natural fit since its knowledge. Mongo DB seems a particularly natural fit since its
internal representation is JSON, which can be transformed to EDN internal representation is JSON, which can be transformed to EDN
extremely naturally." extremely naturally.
Other candidate hierarchical database implementations/interfaces which
might be experimented with include:
1. [Titanium](https://github.com/clojurewerkz/titanium)
2. [Cassandra](https://github.com/clojurewerkz/cassaforte)
(and many others)."
(:require [monger.core :as mg] (:require [monger.core :as mg]
[monger.collection :as mc] [monger.collection :as mc]
[wildwood.knowledge-accessor :refer [Accessor]]) [wildwood.knowledge-accessor :refer [Accessor]])