IDNI / TML

Tau Meta-Language
http://www.idni.org
122 stars 28 forks source link

QUESTION: Closed world Logic? #28

Closed TeamSPoon closed 4 years ago

TeamSPoon commented 4 years ago

Will TML be able to decide when it has enough information to answer a yes/no question?

Once I get an answer, I'll have more to say/ask.

naturalog commented 4 years ago

Your question refers to TML, and as such the answer is trivially yes. However for KRR uses we'll need something more refined, in particular supporting both closed and open world reasoning (and I emphasized a little about owa vs cwa long ago, proposing a method to look at things under the framework of questions and answers).

TeamSPoon commented 4 years ago

So a discussion platform/ conversation scaling that is that would be KRR and not TML?

naturalog commented 4 years ago

yes, the plan is for people to communicate in possibly a large class of formal languages adequate for knowledge representation. tml is intended to support such language-independence feature (by allowing to program a network of translators, and by using tml's reasoning abilities which fit our logics of choice).

naturalog commented 4 years ago

to quote the relevant part from http://www.idni.org/blog/the-new-tau :

We postulate that there should not and can not be a single universal language. There is no reason for one language to be optimal (or even adequate) for all needs. We therefore come up with a meta-language that is able to define new languages, but hey this would be back to square one with one universal [meta-]language. We therefore require the meta-language to be able to redefine itself and change, just as it can define other languages. By that we get not only many languages but also a self-amending language, which is an important part in a self-amending system.

It turns out that logics that can define themselves and have nice logical properties like decidability are not very common. We have Universal Turing Machines, but a less expressive and more informative (e.g. decidable) language is not easy to find. We adopt the logic PFP which its expressiveness is PSPACE-complete as known from Finite Model Theory books, and shown to be able to define itself in Imhof, 1999 "Logics that define their own semantics".

From here we continue to the Internet of Languages. Using the meta-language which we call TML (Tau Meta-Language, can get impression from the ongoing work on github) users define new languages by specifying logical formulas to describe what it means for two documents in different languages to have same meaning. In other words, to define a new language, one needs to define how it translates a semantics-preserving translation into an existing language. Semantics in our scope is ontological (objects and relations), and not operational semantics as in programming languages. By that we get an internet of knowledge representation languages that make the choice of language to not matter. A document in one language can be routed (using TML programs) into different languages.

We do not refer to translation as in French to Chinese, as we already stressed that we don't deal with natural languages. Of course, theoretically, it might be the case that one day someone will program over TML something that can understand natural language completely, but we don't count on such an event. Indeed there are many formalisms of natural language that are quite close to the full language and comfortable for humans to work with (what we refer to "simple enough English that machines can understand"), so we can expect TML to process human-comprehensible languages to some extent. But TML is intended also for machine-only languages. For example one might want to convert a document into a formatted HTML or into a Wiki, or to convert a program in some high-level language to machine code, or to synthesize code from logic.

More generally, TML is intended to be a compiler-compiler. In order to be so efficiently and not having to consider the logic of the language[s] again and again with every compilation of documents written in it, we take the approach of Partial Evaluation, which gives rise to additional very desirable features for a compiler-compiler, in the form of Futamura projections.

TeamSPoon commented 4 years ago

So the items/topic discussed on the discussion platform are not expected have it decidable when it has enough information to answer a yes/no question?

However, the conversion methods it uses (to Translate to a Logical Language) are required to have expected working translators? (In other words, this part is decidable.)

naturalog commented 4 years ago

We require decidability also at the krr level, this is because of our postulates from the language of law, in a broad sense that applies also to the laws of the network. Moreover, many features will not be able to work well without decidability, like agreement detection. It is no different than the everyday life practice of trying to say things in a clear language, such that the listener is able to understand. It is good to have the ability to be unclear sometimes, but for so many cases, clarity is very important. And indeed our focus is on decidable logic and elevating its abilities. It doesn't mean that no user will never be able to use an undecidable logic, but it is completely out of our scope.

TeamSPoon commented 4 years ago

So are you saying:

"We wish to make as much as we can decidable. Many topics/items such as law we will guarantee as far as we can that it is. But we have to accept what isn't decidable won't be. " ?

naturalog commented 4 years ago

we intend to support discussion in logics that fulfil the 3 reqs from the lang of law, one of them being decidability. the rest is out of our scope. however it's very easy to turn tml into turing complete, so why not supply this ability as well.

TeamSPoon commented 4 years ago

OK, decidability (+ other 2) is going to happen where it must happen! And, probably we have to allow some undecidability where it must happen.

Yay, I believe we are now in agreement!

TeamSPoon commented 4 years ago

We require decidability also at the krr level, this is because of our postulates from the language of law, in a broad sense that applies also to the laws of the network.

Seems as though we will have Law code that is decidable.

But the application of the law will need to be able to deal with many unknowns and decide what things need to be decidable and which things need to be undecidable. On IRC you said such a decision (between decidability and undecidability) is not decidable.

So how do you intend to deal with this?

naturalog commented 4 years ago

closed for not listening