ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] Prospects made into Customers and Vice Versa

To: Thomas Johnston <tmj44p@xxxxxxx>
Cc: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Pat Hayes <phayes@xxxxxxx>
Date: Mon, 26 Oct 2015 22:17:38 -0500
Message-id: <BFC3E8BD-653D-4625-BBDE-3061BDBC099C@xxxxxxx>

On Oct 26, 2015, at 1:24 PM, Thomas Johnston <tmj44p@xxxxxxx> wrote:    (01)

> Pat,
> 
> I am aware of two ways of defining a specific set. One is by enumeration, 
>usually written as the identifiers of the set members, separated by commas, 
>and the entire list contained in brackets.    (02)

There are many ways to define sets, but that is a different topic from that of 
the nature of sets themselves. What constitutes a set has been discussed in the 
foundations of mathematics since the late 19th century, and there is a clear, 
universally accepted answer: a set is defined by its members. That is, two sets 
are distinct just when they have different members. This idea is at the very 
foundation of the very idea of a set and of all set theories, formal or 
informal.     (03)

> The other is by stating a set membership criterion sufficient to distinguish, 
>within a given universe of discourse, the members from the non-members of that 
>set.     (04)

Yes, of course, since that distinction defines the set uniquely.     (05)

> This second way of defining a set is the basis for my replying to David that 
>sets can change their membership over time.    (06)

But that is complete mistake, a non-sequiteur. If you have given a criterion 
which defines a set by identifying its members, then that set is fixed by that 
criterion. TIme and change simply do not enter into the discussion here. Look 
in any account of set theory, formal or informal, and any axioms for sets, any 
philosophy-of-mathematics or logical discussion of sets, and time and change 
are not mentioned anywhere. Look even at Codd's foundational theory of database 
semantics, and you will not see any "sets that change with time".     (07)

> And since we were talking about my example of relational Customer tables, 
>this second way of defining the sets corresponding to those tables seems to me 
>the appropriate one to use. (See below for my argument from appropriateness.)
> 
> Perhaps we could conclude that there are two different concepts of sets -- a 
>temporally static one, and a temporally dynamic one.    (08)

That might be nice, but it is a fantasy. The word "set" in contexts like this 
simply MEANS a mathematical set. There is no such thing as a mathematical set 
that changes with time. To model such a construct mathematically one would have 
do something like treat it as a function from times to sets, or a set of 
thing-time pairs, or some other more elaborate construction involving times 
explicitly.     (09)

> But no one that I know of makes that distinction. Instead, we talk about two 
>different ways to define a set (not "set", but one or more specific sets).    (010)

Both of those methods of definition, understood properly, define mathematical 
sets.     (011)

> 
> The Principle of Extension: two sets are equal if and only if they have the 
>same members.
> 
> and
> 
> The Principle of Abstraction: a formula P(x) defines a set A by the 
>convention that the members of A are exactly those objects a such that P(a) is 
>a true statement.
> 
> Robert Stoll (Set Theory and Logic, (Dover 1961, 1965)) goes on to say that 
>"each (of these two principles) is merely an assumption about sets. The basic 
>concept used to enunciate these principles is membership." (p.9)    (012)

Quite. 
> 
> I am talking here, of course, about "intuitive set theory", not formalisms 
>like Zermelo-Fraenkel. But that can be ignored, I think, in this discussion. 
>The question I have for you, as author/contributor to the W3C specs I referred 
>to, is this: since W3C is about the Semantic Web, why did you choose the 
>Principle of Extension rather than the Principle of Abstraction?     (013)

We did not choose either of them. We chose to follow standard practice of 
defining the formal semantics using the concepts of ordinary mathematics, and 
sets are (a very basic) part of that conceptual vocabulary. It would have been 
irresponsible to have done anything else, IMO.    (014)

> Surely, since the Semantic Web is concerned with semantic interoperability 
>over the Web, among multiple databases, the Principle of Abstraction is the 
>more useful of the two principles. 
> 
> It is the more useful, for one reason, because definitions of sets by 
>membership enumeration (which is all that the Principle of Extension supports) 
>are usually irrelevant to relational table sets because inclusion in those 
>tables is always based on criteria, not on arbitrary choice. For example, the 
>criterion for someone being represented in a Customer table is that they be a 
>customer; and the criteria for being a customer are found in the formal and 
>informal policies by which a candidate customer is assessed as qualifying or 
>not.
> 
> It is the more useful, for another reason, because a relational table is a 
>time-extended object which expresses a time-varying collection of objects. And 
>the only way that one and the same set can vary over time is if it is defined 
>by the Principle of Abstraction, not the Principle of Extension.
> 
> So I disagree with your statement that 
> 
> <<< Mathematical sets are not data structures with a state which can change 
>dynamically. To emphasize: this is just terminology, not a philosophical 
>position.  >>>    (015)

Then I am afraid that you are wrong; and I venture to predict that you will 
have some difficulties communicating with people other than me on this topic.    (016)

> 
> If your statement were true, then the Principle of Abstraction would be an 
>invalid way to define a set.    (017)

Nonsense. The PofA, as stated by Stoll and others, defines a mathematical set, 
not (as you seem to believe) some kind of dynamic entity. To define that you 
would need a much more carefully stated principle which mentioned time 
dependence explicitly. For example, I take it that you presume that the set 
defined by a membership criteria understood (or applied?) at time T defines the 
membership of the set at that same time T. Right? But nothing in Stoll's PofA 
guarantees this; perhaps the criterion at T defines dynamic sets whose period 
of membership *starts* at T, for example. Again: you talk rather casually of 
times, but what are these? There are many different and mutually incompatible 
temporal ontologies defining many different notions of time. (see for example 
http://www.ihmc.us/users/phayes/docs/timeCatalog.pdf) Which one will you have 
incorporated into the foundations of your proposed dynamic set theory?     (018)

> Yet Stoll indicates that the Principle of Extension (which seems to be the 
>basis for your contention that representations of sets cannot "change 
>dynamically") is "merely an assumption about sets". As is the Principle of 
>Abstraction.    (019)

Indeed. And Stoll is using "set" here in exactly the normal, accepted, 
mathematical sense.     (020)

Pat    (021)

> 
> 
> Thanks for your reply.
> 
> Regards,
> 
> Tom
> 
> 
> 
> On Monday, October 26, 2015 2:00 AM, Pat Hayes <phayes@xxxxxxx> wrote:
> 
> 
> 
> On Oct 25, 2015, at 3:13 PM, Thomas Johnston <tmj44p@xxxxxxx> wrote:
> 
> > David,
> > 
> > I'm ok with <Class> being defined as a set whose set membership criterion 
>does not change -- which is how you have defined it.
> > 
> > But I'm not ok with the membership of a <Class> never changing, and with 
>your claim that apparent change is simply a matter of our discovering a new 
>member that we hadn't recognized as a member before. My reason is that even if 
>set membership criteria do not change, those things which make up the universe 
>of discourse for a <Class>/set do change. For example, if a customer of a 
>tobacco company has to be eighteen years old, then every year there will be a 
>new crop of people (the universe of discourse) who are eligible to become 
>customers; and probably some of them will. This isn't a merely apparent 
>change; it is a change in what you called "true membership".
> 
> OK, first some terminology. The word "set" as used throughout mathematics and 
>thus also in formal semantics, and thus also in the formal semantics of RDF 
>and OWL etc., means a collection which is defined by its membership. Which has 
>the consequence that the membership of a set cannot change: if set A has 
>different members from set B, then A and B are different sets. Mathematical 
>sets are not data structures with a state which can change dynamically. To 
>emphasize: this is just terminology, not a philosophical position. 
> 
> The OWL semantics specifies that OWL class extensions are sets, so OWL 
>classes share this unchanging quality, according to the OWL specs. (And that 
>decision is a philosophical position adopted by the OWL designers.) Now, that 
>said, since OWL classes have identifiers, it is quite possible to use OWL 
>reasoning on classes while treating them as dynamic things whose membership 
>can change. However, since Web data can be archived and re-used, it is never a 
>good idea to rely on the valid time being the transaction time, so one needs 
>some way to record valid time in the OWL data. One popular idea is to use an 
>RDF dataset in which the graph 'names' somehow record the valid time of the 
>data in each graph; more pragmatically (ie paying less attention to the 
>normative specs) one can simply use the 4th field in a quad store to record 
>time-stamped RDF triples. Semantically, both of these can be viewed as 
>representations of a function from times to RDF graphs, which would be a 
>kosher OWL/RDF way (in fact, also a FOL way) to encode time-sensitive classes. 
>Another way would be to intoduce a whole new OWL entity called, say, a 
>t-class, with properties relating each t-class to a time and an OWL class. 
>This amounts to axiomatizing time-sensitive classes in OWL. 
> 
> Hope this helps.
> 
> Pat
> 
> 
> 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > On Sunday, October 25, 2015 6:40 AM, David Price <dprice@xxxxxxxxxxxxxxx> 
>wrote:
> > 
> > 
> > Hi Rich,
> > 
> > Any software engineer/Semantic Web expert would not allow “So the A boss 
>has the distinction changed so that people who have NEVER bought, but who are 
>known by A, are now treated as customers just like the B division mgrs do it.” 
>to occur. In any serious organisation, the change management of the software 
>system containing Customer would reject this proposal. The actual requirement 
>would be analysed and a reasonable change made the application. 
> > 
> > For many Semantic Web developers, a key characteristic of a “Class” is that 
>their definition does not change. If a change is required with different 
>membership is the desired outcome, then another Class is created that is a 
>superclass of Customer, subclass of Customer or overlaps with Customer. 
>Philosophy and technology cannot actually stop people from doing dumb things, 
>but they do provide guidelines and rules that if followed result in fewer dumb 
>things happening.
> > 
> >  In an engineering standard ISO 15926 used as OWL in Oil and Gas, classes 
>are defined as follows:
> > 
> > <class> is a <thing> that is an understanding of the nature of things and 
>that divides things into those which are members of the class and those which 
>are not according to one or more criteria.
> > 
> > The identity of a <class> is ultimately defined by its members. No two 
>classes have the same membership. However, a distinction must be made between 
>a <class> having members, and those members being known, so within an 
>information system the members recorded may change over time, even though the 
>true membership does not change.
> > 
> > NOTE 1    The membership of a <class> is unchanging as a result of the 
>spatio-temporal paradigm upon which this schema is based.
> > 
> > and as you can see it specifically stated that classes are unchanging. 4D 
>is hard so not that many modellers follow it rigorously, but the idea that you 
>cannot change the definition of a class is pretty typical.
> > 
> > The OWL 2 specification says “Classes can be understood as sets of 
>individuals” and “Class expressions represent sets of individuals by formally 
>specifying conditions on the individuals' properties; individuals satisfying 
>these conditions are said to be instances of the respective class 
>expressions.”,  which if used properly would lead to rejecting the change 
>proposed by this “boss”.
> > 
> > In Semantic Web languages, the concept of namespace is used to disambiguate 
>cases where people use the same term to mean different things, where Tank 
>(military) vs.Tank (storage) is the example people often provide. As it 
>happens, we use Customer as the example in our training material although the 
>people in our example are more responsible than the “boss” in your example.
> > 
> > Cheers,
> > David
> > 
> > UK +44 7788 561308
> > US +1 336 283 0606
> > 
> > 
> > 
> > 
> >> On 25 Oct 2015, at 01:34, Thomas Johnston <tmj44p@xxxxxxx> wrote:
> >> 
> >> I agree, Rich. So since so-called Customer tables will represent different 
>collections of things, albeit all called customers, what are we to do when 
>trying to compare different Customer tables from different databases? Give up? 
>Appeal to Mirriam-Webster? 
> >> 
> >> I take it that the whole idea of a Semantic Web is that software can 
>recognize in what respects similar tables are similar but not identical, or by 
>virtue of what identical set of criteria identical tables are identical 
>(whether or not their names are). If this can't be done by software, it has to 
>be done by people, interpreting definitions written down in data dictionaries. 
>Definitions, I will add, that in thirty years plus of IT database modeling and 
>design in the world of commercial IT, I have never found to be anything more 
>than vague glosses on a statement of the criteria that define those tables and 
>that account for their similarities and differences.
> >> 
> >> In this forum, I believe Pat Hayes to be the most informed expert on the 
>Semantic Web that we have. Perhaps we need to hear from an expert like him, or 
>others, rather than additional comments from an opinionated ersatz academic 
>like myself.
> >> 
> >> Tom
> >> 
> >> 
> >> 
> >> On Saturday, October 24, 2015 5:44 PM, Rich Cooper 
><metasemantics@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> >> 
> >> 
> >> Dear Tom,
> >>  
> >> You wrote:
> >>  
> >> This is what we need a true Semantic Web for. We can't just look for 
>tables in different databases that have the same name, to know we will be 
>accessing tables that represent the same things. 
> >>  
> >> While that statement is true, the name of the table is not as important as 
>its functionality, which is more a conceptual thing about who pays the DB 
>users money, versus who gets paid by the DB users.  When I talk to a developer 
>of systems using different tools and equipment than I use, that developer will 
>immediately know what I mean by the "Customer" table.  So it's more about 
>inflow, outflow  and accumulations within categories.  
> >>  
> >> Two tables represent the "same things" if and only if (i) they share a 
>universe of discourse, and (ii) they use identical set membership criteria to 
>partition that universe of discourse into things that aren't represented in 
>those tables and things that are.
> >>  
> >> Tom
> >>  
> >> It's perhaps more philosophically correct to go that way.  But in real 
>situations (as you probably know), the software does what the software 
>customer wants it to.  It doesn't follow some one-size-fits-all conceptual 
>structure, but it is custom tailored to the owner, the business, the products 
>and services, financing, and all kinds of constraints like that.  So a simple, 
>consistent set of definitions would likely cause disaster in many 
>applications.  
> >>  
> >> Sincerely,
> >> Rich Cooper,
> >> Rich Cooper,
> >>  
> >> Chief Technology Officer,
> >> MetaSemantics Corporation
> >> MetaSemantics AT EnglishLogicKernel DOT com
> >> ( 9 4 9 ) 5 2 5-5 7 1 2
> >> http://www.EnglishLogicKernel.com
> >>  
> >> From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx 
>[mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Thomas Johnston
> >> Sent: Saturday, October 24, 2015 2:26 PM
> >> To: [ontolog-forum]
> >> Subject: Re: [ontolog-forum] Prospects made into Customers and Vice Versa
> >>  
> >> Hi Rich,
> >>  
> >> For naming database tables, what the English language says is irrelevant 
>or, at best, nothing more than suggestive. The table Customer for division A 
>is whatever division A says it is, and so too for division B. 
> >>  
> >> "Customer" is a name that each division gives to a table it has. If they 
>wanted to call the table "XYZ", there is no reason why they can't. The table, 
>and its set membership criteria, are one thing; the name given to it is 
>something else.
> >>  
> >> The tables -- the one for A and the one for B -- if they are relational 
>tables, are sets. As sets, they have set membership criteria which say which, 
>for all the possible persons who might be or become customers, what criteria 
>they have to meet to become customers, and to remain customers. And as I said, 
>across a couple of dozen clients, I have never found any two of them who had 
>Customer tables with exactly the same set membership criteria.
> >>  
> >> And, to look at it from the opposite end of things, suppose A and B did 
>define their tables, in set membership terms, identically, but that A called 
>its table a "Customer" table and B called its table an "Obligated Party" 
>table. The different names wouldn't matter. The two tables would still be 
>identical.
> >>  
> >> This is an example of one of the important things ontologies can do. They 
>can tell us when two identical names are homonyms and, conversely, when two 
>different names are synonyms.
> >>  
> >> If you are worried about the "customer" vs. "prospect" distinction in 
>ordinary English, let me change the example. Let's say that for division A, 
>someone stops being a customer if they haven't purchased anything in the last 
>three years; but for division B, someone stops being a customer if they 
>haven't purchased anything in the last two years. Surely no English dictionary 
>would say that either or both of these rules created an "untruth".
> >>  
> >> And note the most important point. These are differences which make a 
>difference. Even though both tables are given the name "Customer", they mean 
>different things. A SQL Count statement against the two tables, to decide 
>which division had the most customers, could not provide an answer, because 
>the statement will be counting different definitions of "customer". The 
>statement will be counting apples and oranges.
> >>  
> >> Reading up on dictionaries will not solve this problem. First, as I said, 
>dictionaries are irrelevant. Secondly, no ordinary language dictionary would 
>ever provide a definition accurate enough to tell us what rules have to be 
>satisfied for somebody to be represented in any Customer table.
> >>  
> >> This is what we need a true Semantic Web for. We can't just look for 
>tables in different databases that have the same name, to know we will be 
>accessing tables that represent the same things. Two tables represent the 
>"same things" if and only if (i) they share a universe of discourse, and (ii) 
>they use identical set membership criteria to partition that universe of 
>discourse into things that aren't represented in those tables and things that 
>are.
> >>  
> >> Tom
> >>  
> >>  
> >>  
> >> On Saturday, October 24, 2015 12:12 PM, Rich Cooper 
><metasemantics@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> >>  
> >> Dear Tom
> >>  
> >> I would like to recapitulate your example of the company that has two 
>divisions A and B.  B treats all prospects as customers while A distinguishes 
>customers as those who have actually bought something in the past.  
> >>  
> >> The boss tells A division mgrs to up the customer count. So the A boss has 
>the distinction changed so that people who have NEVER bought, but who are 
>known by A, are now treated as customers just like the B division mgrs do it.  
> >>  
> >> While that change seems very normal and natural for a business to do that 
>in trying to wrap its processes around the tax and risk constraints it has to 
>deal with, it also seems like an untruth, since the English language says 
>Prospects are not the same as Customers.  
> >>  
> >> How do you philosophers in the crowd deal with that kind of change of 
>definition into something every business knows is just plain incorrect?
> >>  
> >> Sincerely,
> >> Rich Cooper,
> >> Rich Cooper,
> >>  
> >> Chief Technology Officer,
> >> MetaSemantics Corporation
> >> MetaSemantics AT EnglishLogicKernel DOT com
> >> ( 9 4 9 ) 5 2 5-5 7 1 2
> >> http://www.EnglishLogicKernel.com
> >>  
> >> 
> >> 
> >> _________________________________________________________________
> >> Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ 
> >> Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ 
> >> Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
> >> Shared Files: http://ontolog.cim3.net/file/
> >> Community Wiki: http://ontolog.cim3.net/wiki/ 
> >> To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
> >> 
> >> 
> >> 
> >> 
> >> _________________________________________________________________
> >> Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ 
> >> Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ 
> >> Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
> >> Shared Files: http://ontolog.cim3.net/file/
> >> Community Wiki: http://ontolog.cim3.net/wiki/ 
> >> To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
> > 
> > 
> > 
> > _________________________________________________________________
> > Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ 
> > Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ 
> > Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
> > Shared Files: http://ontolog.cim3.net/file/
> > Community Wiki: http://ontolog.cim3.net/wiki/ 
> > To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
> > 
> > 
> > 
> > _________________________________________________________________
> > Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ 
> > Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ 
> > Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
> > Shared Files: http://ontolog.cim3.net/file/
> > Community Wiki: http://ontolog.cim3.net/wiki/ 
> > To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
> 
> 
> ------------------------------------------------------------
> IHMC                                    (850)434 8903 home
> 40 South Alcaniz St.            (850)202 4416  office
> Pensacola                            (850)202 4440  fax
> FL 32502                              (850)291 0667  mobile (preferred)
> phayes@xxxxxxx      http://www.ihmc.us/users/phayes
> 
> 
> 
> 
> 
> 
> 
>     (022)

------------------------------------------------------------
IHMC                                     (850)434 8903 home
40 South Alcaniz St.            (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile (preferred)
phayes@xxxxxxx       http://www.ihmc.us/users/phayes    (023)







_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J    (024)

<Prev in Thread] Current Thread [Next in Thread>