Scope: A protocol for idea alignment.
Assumption: Many agreements flounder on definitions.
Key base concepts:
1.
Language act: An event where an actor uses a statement to convey an idea to other agents.
2.
Statement: The content of the language act.
1.
Statements are made of language components, some of which are structural and some of which are indexical. We'll call the latter components labels.
3.
Idea: Anything that can be reasoned about, or talked about (in the context of social cognition).
1.
Taken from the notion of topic in topic mapping, with caveats and extensions. Topics are also called subject proxies.
2.
Explicitly includes:
1.
Entities
1.
Agents
2.
Situations (configuration of ideas)
1.
Events (including language acts)
3.
Predicates: a partial function from an idea to a classifying set. (This can be the boolean set, a set of labels, or even an interval.) (Not unrelated to subobject classifiers in topos theory)
4.
Categories: Classifying sets of entities, defined by intension, extension, or both.
5.
Situation schemas (structured situation categories, includes what most people describe as relation types, which are just 2-schemas)
1.
Inference rules
1.
Those are schemas for situations that describe an inference relationship between other ideas
6.
Linguistic elements
1.
Quoted Statements
Note that (quoted) Statements are ideas in that they can be the subject of discourse; but that is orthogonal to their role as attempts to express ideas.
2.
Labels
3.
Statement structural elements
7.
This list is not asserted to be exhaustive; but partial enumeration is used as a way to assert intension (and possibly intention also, but this was not a misspelling.)
Further assumptions and definitions:
A statement is an attempt by an agent to express an idea. It has no inherent connection to the idea outside of agent's inner state, and ideas and statements are in a many-to-many relationship. Hopefully, for a given agent, a statement points to a single idea, but note that the idea may not be fully defined in the agent's consciousness.
Still, we will posit that there is often a rough alignment between the idea that the emitting agent was attempting to express, and the idea (or set of ideas) that receiving agents will interpret the statement as. But ideas are not accessible unless through statements. (IRL some ideas are also embodied, but this is out of scope.)
Some ideas are more agreed-upon than others. (Probably through embodied grounding.) This protocol is not concerned with the bootstrapping stage (acquisition of language by an infant) but with the refinement stage, and assumes an inter-intelligible common language core (though what is in the core can be subject to argument!)
Formal statements are a certain kind of statement which rely upon an explicit core which is assumed understood. That core is usually concerned with the structure of the statement more than its content, but statements using controlled vocabularies are also formal statements.
Idea alignment is a sequence of statements, some of which will be protocol-specific formal statements.
I am putting the endorsement of claims outside of this scope: We are endorsing definitions, and whether we agree on the meaning of a claim, not whether we believe it to be true. That should be done in another layer.
Core protocol actions:
1.
Posit : Make a statement, state an idea.
1.
In theory, we can refer to the statement by its sequence number in the activity stream. But in general, we will use definitions (below.)
2.
Any statement's inner structure contains words, which can be the labels for other ideas.
3.
Predicates: a predicate is an idea in the form of a partial function from an idea to a classifying set. This can be the boolean set, a set of labels, or even an interval. It could be a power set of a set of labels; or it could be a probability distribution over a set. We need to be able to treat the predicate function values as disjoint unless specified otherwise.
1.
Note: Indirectly related to subobject classifiers in topos theory.
2.
Definition: give a name to a pair consisting of a label and an idea statement.
1.
Variants:
1.
Clarification: Add a further statement to describe the same (labeled) idea, with the understanding that the idea did not change.
1.
Explicitation: A clarification that makes component labels explicit. (Often doubles as a definitional refinement)
2.
Redefinition: re-assign the label to a new, different idea.
3.
Definitional refinement: A redefinition where all previous statements still hold, but a new statement restricts the idea's extension.
3.
Refinement assertion: Assert (or deny, or declare ignorance) that a labelled idea A is a more specific case of another idea B.
1.
Declaring ignorance may be a way to ask a question. Extension into modal or fuzzy logic may be useful, but currently out of scope.
2.
Special cases
1.
The prototypical case is asserting that an entity falls under a category. In theory, a finite category could be defined by extension, i.e. through a list of its entities. In general, we will try to match extension and intension.
2.
Subcategories can also be defined this way. Ideally, if you deny that A is a subcategory of B, you should provide an example entity X which belongs to A and not to B.
3.
Situations fall under situation schemas in the same way that entities fall under categories
4.
Distinction: Use a predicate to subdivide a category into subcategories (or a situation schema into sub-schemas.)
1.
Note that since predicates are partial function, the distinction is "full" only if totally defined on the extension of the original category. Partial functions can still contribute to understanding, and expanding the coverage is a special case of definitional refinement.
2.
Distinction has an important property not shared with simple refinement, and that is the assumption of disjointness.
1.
From these actions, we can compute the following:
1.
For any statement, the set of other statements that some agents accept as equivalent (in a mutual refinement relationship)
1.
Some of those equivalences will be controversial, i.e. denied roughly as often as they are asserted.
2.
We can define a threshold for adoption of equivalence.
3.
A maximally set of statements, that are uncontroversially equivalent, forms a plausible proxy for an idea. (compare subject proxy, another term for topics.)
4.
The number of such equivalence relations, minus the number of conflicting equivalences, gives a measure of collective acceptance of an idea.
5.
For each idea in order of decreasing acceptance, use the statement with the most equivalence relations as the most representative statement, unless it has been chosen as representative statement for a better accepted idea.
6.
Similarly, choose a unique, most adopted label for each idea, in order of acceptance.
2.
Contested refinements and distinctions, especially those with a lot of supporters and detractors, represent fault lines of disagreement, and should be converted into formal distinctions as much as possible.
1.
In the case of a contentious subcategory, it should be possible to ask detractors for a counter-example and to use it as the basis for a distinction.
3.
Accepted idea proxies and accepted refinements form a concept lattice, as in Formal Concept Analysis, ideally with distinctions motivating each branch point.
4.
Hence, for any label, we can point to the most accepted idea proxies, using their representative definitions, that have been associated with that label, in order of decreasing adoption.
1.
This will vary in time, and we must add some inertia to reduce jitter.
2.
We can measure entropy: if there are many popular idea proxies for a label, the entropy is high.
3.
We can also identify distinctions, whether accepted or contentious, if any, that have the maximum impact on knowledge entropy.
4.
Those can be used as a measure of the urgency to replace an ambiguous label by a best label, subject to choosing among the branches of the distinction whose branches have the highest entropy gain.
Technical instantiation
We plan to create a basic schema that expresses this, probably using LinkML. This will entail compatibility with JSON-LD, JSON-Schema, etc.
We intend to be agnostic about the transport layer; we hope to eventually be compatible with distributed systems such as ATProto, ActivityPub, IPFS, etc. We are considering ATProto for the initial implementation.
Similarly, we are going to accept multiple DID implementations.
Encrypted signatures for events are in scope, blockchain is not (yet.)
Statements and events are immutable, and should ideally be content-addressable.
Idea proxy state is highly mutable, and federation services (distributed or federated) will resolve idea proxy identifiers to the current state of the idea proxy:
A linked list of most accepted statements and labels, and their respective provenance
A linked list of most important distinctions that apply, and neighbours in the idea lattice
Note that we do not expect each server to know the computed state perfectly; only to have a good-enough approximation, eventually convergent, and to be able to direct the client at the most likely sources for more information.
Similarly, federation services (distributed or federated) should allow to map statements and labels to a linked list of idea proxies.
Analysis of the proposed protocol using Rao's 10 dimensions
1.
Generativity
This protocol is a layer, and we think many other protocols can be layered above it, notably:
1.
Idea endorsement
2.
Internal reputation: being able to make judgement calls about the intrinsic logic of refinements and predicates.
3.
Topical reputation: being knowledgeable about a domain of knowledge, and making useful distinctions within that domain
4.
Idea mapping
2.
Legibility
Few people have the training to make formal, structured statements, or are even familiar with the distinction between an idea and its statement. There is pedagogical work as well as UX work. (We are also working on a game whose primary aim is training people into structured conversation.)
However, we believe that making these explicit will precisely encourage the awareness of the distinction and why it is so fundamental to good communication. And the basic mechanisms of definitions, distinctions and taxonomies are already part of the basic cognitive toolbox, even if concept lattices are much more obscure.
3.
Stewardability
There are a lot of organizations that create tools for thought (Roam, Tinderbox, The Brain, etc.) at the statement level. Being part of a federation gives them visibility, and if they share data they could benefit from each other's strengths. But buying into this vision means giving up on exclusivity of users. We believe that the advantages are clear enough that they may be invited into a stewardship council around this federation and the underlying protocol.
See further notes in legitimacy.
4.
Evolvability
1.
The basic concepts are fixed enough, but the list of idea subtypes is open.
2.
There is room for more basic operations, though we claim that we cover a lot of use cases with those we have identified.
3.
There is a lot of tuning that can and should be done with the derived state computations, and we intend a system where new views and computations can be added to the federation. (Following the model of ATProto moderation)
5.
Legitimacy
This process will be legitimate insofar as it is fully inclusive, and the algorithms are fully transparent.
There is a tension there: we said we would invite a multiplicity of algorithms, and in the interest of inclusivity there will be pressure to include non-transparent algorithms. This must be absolutely resisted by the stewardship.
Also, this layer will be legitimate insofar as it is kept distinct from other layers, where the substantive debate would happen, and which we expect to be subject to more political pressure. But we hope that people will value it precisely for that reason.
6.
Constraints
There are many trade-offs in this design, and we are not confident we have identified them all yet. But here are important trade-offs we have identified:
1.
If an idea proxy is updated too often, any idea that refers to it becomes unstable. We must constrain the update cascades, while allowing evolution.
2.
There is a balance between the need for sub-communities to think inside trusted circles, allowing privacy, and discouraging echo bubbles. We believe that views that alternate between local maps and showing the links to the federation strikes that balance, but we could be wrong.
3.
We believe the flexibility of eventual consistency in a federation outweighs the computational and time complexity of trying to achieve a single truth at all times, as blockchain does.
4.
However, we want to leverage the redundancy of fully distributed systems. That may necessitate moving beyond ATProto eventually.
7.
Learnability
See the pedagogical notes in legibility. We are counting on a public reference implementation as a starting point. We also want to provide maps of the semantic space around prominent public discourse statements as a way to introduce bystanders to the value of this analysis.
8.
Ludicity
Many people love language games. Balderdash and Zendo are great examples. Many were inspired by the vision of the Glass Beads Game, and instantiations are many. Besides designing our own game as an introduction to structured discourse, we are hoping that people design their own games using the operations and infrastructure of the idea alignment protocol.
9.
Defensibility
One can wish that separating belief and definitions would be sufficient to allow good faith in definitions, but there is no doubt that there will be attempts to sabotage the system.
We currently rely on sufficiently many people understanding the importance of good-faith arguments to focus on good definitions to outweigh chaos actors. But this requires the count of endorsements to reflect humans and not bots. This problem needs to be resolved at another layer, and we are watching this space.
Even if that layer existed, it may not suffice, if enough humans align against discourse. We expect we will need to use a combination of moderation and text analysis.
10.
Mortality
In a way, we are hoping to give birth to structured conversation on the compost of ambiguous natural language. But we believe that structured conversation is but a step in the evolution of human communication. Still, there is no doubt in our mind that what we hope to build, because it is a commons, will leave a trace that can in turn serve as compost for the next step in that evolution.