Skip to content

A formal background to unify triples and triple terms #91

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 34 commits into from
Mar 19, 2025

Conversation

franconi
Copy link
Contributor

@franconi franconi commented Feb 13, 2025

Added at the end of Section 5.3:

  • semantic properties relating triple terms and asserted triples, together with a general definition of (simple) satisfiability.

The terminology defined here should be used to support the unification of the terminology of triples, as per issue #158 in Concepts.

This closes #87


Preview | Diff

franconi and others added 26 commits January 27, 2025 17:42
Co-authored-by: Pierre-Antoine Champin <[email protected]>
Co-authored-by: Niklas Lindström <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
Copy link
Contributor

@niklasl niklasl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@franconi
Copy link
Contributor Author

@pfps
Copy link
Contributor

pfps commented Feb 13, 2025

It's a new initialism to get around the current political crackdown and still show that you are woke. I'll let you work out the expansion for yourself.

Copy link
Member

@TallTed TallTed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good forward motion!

@pfps
Copy link
Contributor

pfps commented Mar 6, 2025

Isn't it time to merge this PR?

@pfps pfps added the spec:substantive Change in the spec affecting its normative content (class 3) –see also spec:bug, spec:new-feature label Mar 6, 2025
@TallTed
Copy link
Member

TallTed commented Mar 7, 2025

Copy link
Contributor

@doerthe doerthe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would like to have the wording for the equivalence fixed (see my comment).

…definition of satisfiability as suggested by Doerthe
@franconi
Copy link
Contributor Author

Ready for merging - waiting for the OK by @doerthe.

@doerthe
Copy link
Contributor

doerthe commented Mar 13, 2025

I am sorry, I accidentally directly changed the file instead of suggesting a change. But it was minor.

spec/index.html Outdated

<p>We define the <dfn>set of propositions</dfn> in an interpretation as follows:</p>

<p class="fact"> The set of propositions in an interpretation I is IPR(I) = {&nbsp;&lt;x, y, z&gt;&#65372;x is in IR, y is in IP, z is in IR&nbsp;}; we observe that the propositions are exactly the domain of the RE mapping used to denote triple terms as resources. </p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I want to make sure that this is correct. Is IPR the domain of RE? Or are the propositions what RE maps into (the codomain)? Since triple terms denote propositions, is RE mapping propositions to other resources, or to propositions?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@niklasl my understanding of those definitions is that both "propositions" and "facts" must be 3-uples of things, so yes, IPR is he domain of RE, not the co-domain. And you are right, the "propositions" here are not the instances of rdfs:Proposition, but their inverse images for RE.

I am not too bothered by this conflation, because:

  • there are precedents anyway (rdfs:Literal and, in a way, rdf:Statement)
  • while it is cleaner to define the co-domain of RE as a set of "opaque" elements of the domain, their intended meaning is (at least in my mental model) to represent the proposition itself (in a literal-ish way)
  • introducing two different terms here would confuse anyone beyond those who commented on this PR...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I certainly don't want two different terms here. I just wonder, if my reasoning is correct, that IPR(I) = { RE(x, y, z) | x ∈ IR, y ∈ IP, z ∈ IR } and F(I) = { RE(x, y, z)|<x, z> ∈ IEXT(y) } might be the way to express that.

I've figured that the reason of keeping RE "opaque" rather than expanding its definition is because to do that, we'd need modal and/or higher order logic (and forsake completeness). My thinking is that it maps to a "delayed evaluation" of <x, z> ∈ IEXT(y) (which may even be parameterized in a modal logic). Of course, I suppose that makes F(I) a mapping from (all facts in) the interpretation to their image of propositions.

But if keeping the definitions of IPR and F as the preimages of (respectively) propositions and facts in the interpretation keeps things simpler (rather than obscuring by conflation), I can probably live with that. (I should, since I initially conflated them like that in an attempt to move further towards clarity. I much prefer some clarification to none. And yes, there are other conceptual conflations.)

Copy link
Contributor

@doerthe doerthe Mar 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have been discussing about that before. Currently, RE is an injective mapping from IRxIPxIR into IR. Wether or not it is the identity is a different question which we discussed before and we can certainly keep discussing (I already see some people objecting here, but we can even do that if don't change the semantics :) ), but for this PR the current form is correct.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I certainly don't want two different terms here. I just wonder, if my reasoning is correct, that IPR(I) = { RE(x, y, z) | x ∈ IR, y ∈ IP, z ∈ IR } and F(I) = { RE(x, y, z)|<x, z> ∈ IEXT(y) } might be the way to express that.

I think what would be in line with your idea would be to simply get rid of RE (that is, use the identity), that is

I(<s,p,o>)=<I(s), I(p), I(o)>.

Copy link
Contributor

@niklasl niklasl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using RE to define IPR, F and FEXT.

Co-authored-by: Niklas Lindström <[email protected]>
Co-authored-by: Niklas Lindström <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
@franconi franconi merged commit d735e2d into w3c:main Mar 19, 2025
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spec:substantive Change in the spec affecting its normative content (class 3) –see also spec:bug, spec:new-feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

A formal background to unify triples and triple terms
8 participants