# textual higher-order primitives
We need to find higher-order primitives in natural language and then have strong, fast ways of extracting those primitives.
here's what I have so far:
1. a fact
2. an opinion
3. a feeling
4. a thought
now let's add some structure
1. a fact
1. a fact about an opinion (my opinion is X, and that's a fact)
2. a fact about a feeling (it's a fact that I feel like X)
3. a fact about a thought (it's a fact that I thought X)
then we can add another primitive, the hypothesis:
1. a hypothesis
I built the rest myself because it seems like the fact was the super-class of the rest of the list. Maybe a hierarchy is not the right way to describe it, and a better way would be through the use of modalities. An opinion can be stated through the mode of a fact or a hypothesis. "maybe he thinks this is true" versus "he thinks this is true".
Although it would all be incapsulated by two super-super modes, which are actually two extremes of a continuous value:
**veracity** going from
fact <-|-|-|-|-> humanism
But now it strikes me that "veracity" means two different things when it comes to a fact, and when it comes to a hypothesis. Surely that is a natural feeling to have when thinking about these things. In order to make this distinction more evident however, let's define our words more carefully:
fact -> concrete reality
hypothesis -> abstract reality
If we think about this more globally though, they're not so different. Where's the line between meteorology as an abstract reality and a typhoon as a concrete reality? What's the difference?
My mind immediately answers with : abstract reality is a *candidate* for being a super-reality.
If we were to use the connection between them so as to put both on a continuum, we might define the following:
**DOR** (Degree of Replication)
reality <--> super-reality
---
Here's what we've learned that we can apply to natural language processing:
- We need to be able to determine if a statement is a "summarized" or "abstractized" version of another statement and automatically generate graph structures.
- In order to do this, we have to:
1. define the correct primitives
2. create strong, fast, reliable systems for measuring, detecting, extracting those structures
3. build on top of that the systems which attempt to create a conceptual pyramid of abstraction between the objects
- in order to do that, we need:
1. data structures that neural networks can use to communicate their attempts to create hierarchies with humans
2. data structures that neural networks can edit
3. **take topic modeling, and add a new dimension to it**
and the final structure of these primitives is now:
- **veracity (from fact to humanism, 0->1)**
- **degree of abstraction (from real to super-real, 0->1)**
- opinion
- thought
- feeling