I guess there are a number of meanings of primitive.
The sense Matthew defined and you and Duane used below is one (another example of this commonly used in logic is ‘proper part’ and ‘part’ (including improper part) – one can use either as a primitive in an axiom system for mereology and derive the other.
This makes it less useful as a foundational concept for ontologies where one wants to have a single set of primitives – separating the primitive sheep from the non-primitive goats. An obvious response is to take the ‘good (useful) enough’ stance you suggest below.
Another is to be neutral and allow both – regarding primitive-ness as a feature of the representation logic rather than the things themselves.
If one is after something more basic (and I think this idea lurks in many discussions of foundational ontology), then the (philosophical) notion of ontological category may be more useful. These are ontological rather than logical primitives.
(I suggest we leave aside the problem of agreeing on ontological categories – for reasons Ian raised earlier.)
One example might be the distinction between Universals and Particulars.
In this case, these ‘primitives’ do not seem to be derivable one from the other in the same way.
The ontological category-ness seems to be a feature of the things rather than the representation.
Regards,
Chris
From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx [mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Cory Casanave
Sent: 02 February 2010 20:39
To: [ontolog-forum]
Subject: Re: [ontolog-forum] Foundation Ontology Primitives
Duane,
Sure, but “primitive” is a frame of reference. Are polar or Cartesian the “primitive”? the fact is, either one will do and you can derive one from the other. So it is just fine for one system to choose polar and the other Cartesian and we can relate these easily. We don’t even have to “agree” that one is more primitive than the other, just that we have related concepts – reaching consensus is not required.
For a concept system like Pat is talking about we can apply the same principle – as long as Pat has a useful primitive set (and it gets used), it can become the “hub” of many other ontologies. This does not require that this be the one and only hub, only that it is useful and is successfully used to define the other concepts. Allowing for “multiple hubs” can take some of the “religion” out of the arguments and allow for the development of useful hub ontologies that may eventual converge or may remain distinct. Multiple hubs allow allows for the inevitable refactoring as we better understand different viewpoints.
-Cory Casanave
From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx [mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Duane Nickull
Sent: Tuesday, February 02, 2010 2:54 PM
To: [ontolog-forum]
Subject: Re: [ontolog-forum] Foundation Ontology Primitives
Inline:
On 2/2/10 11:43 AM, "Matthew West" <dr.matthew.west@xxxxxxxxx> wrote:
> I hope that it will not actually be necessary to try to precisely
> define
> the borderline between primitive and non-primitive.
A concept is primitive if it cannot be completely defined in terms of
concepts you already have defined.
Most OO programming languages are structured this way. If there is any way to build such a concept with another class, then refactoring is often used.
Take drawing primitives as an example. There is one base primitive which might be “coordinate”. This corresponds to a specific X,Y pair. This is abstract so at this point it ignores all pixel resolutions etc but could generally taken to be based on a pixel grid.
The next level down would be some primitive shapes. Candidates might be Line, Circle, Ellipse, Rectangle, Square etc. On closer examination, circle can be stated to be a specialized type of ellipse (one with a constant radius value) and a square can be declared as a specialized type of rectangle (one with equal side lengths within a fixed unit of precision, usually the pixel resolution when implemented). Line might also be a candidate for rectangle (a rectangle with height:width ratio exceeding certain limits) but lines could also carry the added property of an arc or path. Therefore the true primitives might be coordinate (or point), line, ellipse and rectangle. This represents a context of pixelated screens however. In vector graphics (SVG et al) the primitives may be different.
A triangle then presents a test. Is it another primitive of is it a specialized type of one of the existing graphic primitives. One could create another primitive called “fill” that takes parameters of a “boundary” expressed in terms of lines. This could then make up all other shapes such as polygon, triangle, star, etc..
Duane
---
Adobe LiveCycle Enterprise Architecture - http://www.adobe.com/products/livecycle/
My TV Show - http://tv.adobe.com/show/duanes-world/
My Blog – http://technoracle.blogspot.com/
My Band – http://22ndcenturyofficial.com/
Twitter – http://twitter.com/duanechaos