The Knowledge Base - rbjones/HoLoTruth GitHub Wiki

The proposed knowledge base is pared down to a minimum to provide representation of arbitrary models of any subject matter of interest in the core abstract representation which is a variant of Higher Order Logic.

It does this by recording what we will here call "contexts", which are collections of defined names. When we write a formal specification of an abstract model of some structure or phenomenon, this is done by progressively introducing new names for components or features of the model, in much the same way as we would write a program by defining a number of named subroutines, procedures or functions.

In the case of writing a program, we might be interleaving in this process the testing of various subsystems as we go. In the case of a formal specification, we would expect to be proving various theorems about the structures defined as we go. However, the core knowledge base structure here envisaged does not itself accommodate the development of the theory (i.e. the proof of theorems derivable in any given context), which would take place in second layer of repositories.

The Knowledge base is a hierarchic collection of contexts whose definitions are distributed over a potentially cosmic dataspace whose earthly components will be locatable by URLs. There are multiple partial relations over the contexts in the knowledge base. There is an acyclic relation reflecting which contexts are mentioned in the definition of a context, typically as a base for a conservative extension introducing addition names and constraints.