- From: Chris Welty <cawelty@gmail.com>
- Date: Mon, 18 May 2009 15:55:06 -0400
- To: "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>
Abstract: In the abstract and overview, I think the standard-speak used is too constraining regarding the requirement of future dialects to implement FLD: "The actual dialects are required to specialize this framework to produce their syntaxes and semantics. " I suggest this be slightly weakened to use "should" instead of the implied "must", ie "...dialects should be derived from RIF-FLD by specialization..." In general, the text is pretty good about saying that FLD may need to be updated in light of new dialects, but I still think our message is that FLD *should* be used, not *must* be used, in the specification of new dialects. Of course one could argue that FLD is only making this requirement of dialects that wish to be called "logic" dialects, but as with the naming of "not", which came down to sort of "who gets the right to call their negation 'not'", I can imagine some group wishing to say they have a "logic" dialect even though it is incompatible with FLD. 1. Overview "All logic RIF dialects are required to be derived from RIF-FLD by specialization, " ibid. 2.2 Alphabet "Definition (Alphabet). The alphabet of the presentation language of RIF-FLD consists of the following disjoint subsets of symbols: " Common Logic allows variable symbols and constant symbols to overlap. Do the subsets need to be disjoint? All these types of things can be distinguished by their syntactic context. "A countably infinite set of quantifiers...where n ≥ 1" It seems strange to include the variables as part of the set of quantifiers. WHy aren't the quantifiers just Exists, Forall, ... 2.4 Terms "Positional terms in RIF-FLD generalize the regular notion of a term used in first-order logic. For instance, the above definition allows variables everywhere, as in ?X(?Y ?Z(?V "12"^^xs:integer)), where ?X, ?Y, ?Z, and ?V are variables. Even ?X("abc"^^xs:string ?W)(?Y ?Z(?V "33"^^xs:integer)) is a positional term (as in HiLog [CKW93]). " This idea goes back at least as far as Enderton, 1972, and has been used in implemented systems such as SNePS and Conceptual Graphs in the 80s. Since Enderton published in '72 what was already a "well known encoding" of predicate variables in FOL, I don't think it's accurate to say this "generalizes...FOL". The fact is that this IS perfectly first-order. Thus it seems reasonable to just say something like: "Positional terms in RIF-FLD are quite general, and allow variables everywhere, as in ?X(?Y ?Z(?V "12"^^xs:integer)), where ?X, ?Y, ?Z, and ?V are variables. Even ?X("abc"^^xs:string ?W)(?Y ?Z(?V "33"^^xs:integer)) is a positional term (as in HiLog [CKW93], SNePS [SR87], and Common Logic [CL07]). " The SNePS reference is: Shapiro, Stuart C., & Rapaport, William J. (1987), "SNePS Considered as a Fully Intensional Propositional Semantic Network" [PDF], in Nick Cercone & Gordon McCalla (eds.), The Knowledge Frontier: Essays in the Representation of Knowledge (New York: Springer-Verlag): 262-315. I fixed a number of formatting problems w/ subscripts. If outside a <tt>, subscripts for 1 look like a | 3.2 Truth Values "RIF dialects can have additional truth values. For instance, the semantics of some versions of NAF, such as well-founded negation, requires three truth values: t, f, and u (undefined), where f <t u <t t. Handling of contradictions and uncertainty usually requires at least four truth values: t, u, f, and i (inconsistent). In this case, the truth order is partial: f <t u <t t and f <t i <t t. " Since the document says the inverse operator needs to be defined, I suggest you define it here for these two examples. 3.6 Interpretation of Non-document Formulas In a <t,u,f> valued dialect, I'm unsure what happens in this case: Exists(?x) P(?x) Exists(?x) P(a) :- P(?x) If this entails anything other than P(a), then we would have a hidden extension. -------------- In general as reading I tried to think of myself using FLD to define a full first order (+ datatypes) dialect, but I was not able to get a clear idea of it, so I'm left unsure whether it would work. I didn't notice anything in particular (other than noted above) that would prevent it, but the document is long and contains a lot of concepts and I never got to the point where I understood the whole thing at once. As I read, though, things did make sense and I thought the flow of information was appropriate. I did not look at the XML syntax section (4). I note that, like BLD, FLD avoids any notion of error. I understand why we did that for BLD, but wonder if more expressive and complicated dialects will want it, and whether FLD should support it. -- Dr. Christopher A. Welty IBM Watson Research Center +1.914.784.7055 19 Skyline Dr. cawelty@gmail.com Hawthorne, NY 10532 http://www.research.ibm.com/people/w/welty
Received on Monday, 18 May 2009 19:55:50 UTC