Re: Nonmonotonic rules

Pat,
Let us recall how this debate started in the first place. You made a
sweeping claim that rules out nonmonotonic theories on the web. But then
you said:

> There are patterns of reasoning that are useful.  They are conventionally
> called nonmonotonic. In many cases (closed world, unique name) they are
> not intrinsically nonmonotonic. I want to find ways of making them
> useable in an overall monotonic framework.  Defaults are a rather tougher
> case, I will concede.

So, it seems that you are shifting arguments here. You are admitting that
certain patterns of reasoning, which are understood as non-monotonic by
most people, are useful and you would like to make use of them provided
you can fit them within your framework.

I don't think that we have much of an argument here. I am not attached to
any particular non-mon theory. If you can capture the useful reasoning
patterns in some other way---all the power to you.  Can I start using your
framework now? (I do want the defaults, too.)

I would like to understand better what you mean by explicit closure of the
world. Let's go back to Tweety.

Rules:
    bird(Tweety).
    fly(X) <- bird(X), not abnormal(X).
Closure (about abnormality):
      1.   abnormal(X) <- X comes from data-source-1
	    ...
      k.   abnormal(X) <- X comes from data-source-k
      k+1. Nothing else is abnormal

Suppose  Closure |=  not abnormal(Tweety), so Theory+Closure |= fly(Tweety)
So far so good.

Let's now assume that Tweety comes from data-source-N, and we add a rule

Rn:  abnormal(X) <- X comes from data-source-N.

How are you proposing to handle this, using case (a) or (b) below?

     a. Closure + Rn is inconsistent, so Theory+Closure+Rn |= fly(Tweety).
        Everything is monotonic here, but it is hardly what you want (at
        least, not what I want).
     b. Change Closure to Closure' as follows:
            1.   abnormal(X) <- X comes from data-source-1
	    ...
	    k.   abnormal(X) <- X comes from data-source-k
	    k+1. abnormal(X) <- X comes from data-source-N
      	    k+2. Nothing else is abnormal

	Now  Theory+Closure' |=/ fly(Tweety).

	I believe that this is the conclusion that both of us want.

Are you saying that alternative (b) is NOT non-monotonic because Axiom k+2 in
Closure' is not the same as Axiom k+1 in Closure (once you state it precisely)?
For instance, if you use Clark's completion then this would be the case.
(I am bringing Clark's as an example--it is not a suitable solution.) 


I would also like to address another point that you raised: 

me> The brittleness argument against non-monotonic reasoning is a red
me> herring.

you>  I fundamentally disagree. It is absolutely central to the SWeb.

me> Where is a proof of this statement?

you> Well, the point seems to be widely accepted,

I trust that you have conducted a scientific poll on this matter, but
let's go to a more factual part of your statement.

you> but it also seems kind of obvious. It has to do with 
you> publishing content on the Web. If A publishes X 
you> which is later read by B, and B has no access to 
you> any of the context that A is assuming, then the 
you> semantic protocols defining the information that 
you> is conveyed from A to B by X have to assume that 
you> this information is independent of the context. 
you> Since A cannot, by the very nature of the WWW 
you> architecture, possibly know what other 
you> information may be available to B and combined 
you> with X to draw conclusions, the meaning of X has 
you> to be monotonic.

Here, it seems, you are trying to put words into the mouth of your
imaginary opponent.  (OK. Perhaps you had such a conversation with
somebody, but not with me.)

I agree that publishing a statement that makes non-monotonic closure with
respect to an unknown set of sources doesn't carry much useful info for the
recipient of the statement. But this is not how I envision non-mon systems
on the web. What you can do is to publish a set of statements that make
non-mon closure with respect to the sources provided by the *consumer* of
the rules.

For instance, I can publish a heuristic for planning complex multi-segment
trips. My heuristic will assume any number of generic inputs and will make
decisions based on the available inputs. It will take the inputs provided
by the consumer and close them off.

So, the rules are provided by me, but the context by you, the recipient.

You may call it monotonic (because the context is explicit) or "doing
nonmonotonic inference in the privacy of my own inference engine", as you
put it earlier, but I would say that this kind of architecture is
conventionally understood as non-monotonic.

It seems to me that the difference is terminological more than anything else.


	--michael  



pat hayes <phayes@ihmc.us> writes:
>
> >  > >Pat,
> >>  >
> >>  >This is a powerful statement, but I would like to see it backed up with
> >>  >examples of purely monotonic rules that are worth publishing.
> >>
> >>  I would like to see an example of a nonmonotonic
> >>  rule that is worth publishing.
> >
> >Notice that you are passing the buck and are refusing to back up your
> >statements.
> 
> Well, true. But almost any implication would be 
> an example of a monotonic rule, and such 
> implications are ubiquitous. (True, many of them 
> can be mapped directly into DL without using 
> rules...) If its a penguin, it doesn't fly: 
> that's monotonic.  If its a time-interval, its 
> endpoint is later than its startpoint... choose 
> your favorite implication.
> 
> >  > I'll offer you a
> >>  challenge: show me a nonmonotonic rule, and I'll
> >>  undertake to send you back a case where it would
> >>  immediately produce a false answer.
> >
> >"Birds normally fly"
> >"Sick birds normally don't"
> >"Penguins don't fly"
> 
> 1. Im working in a center that rescues and tries 
> to fix and re-release damaged or injured 
> endangered birds. Birds here normally don't fly.
> 
> 2. Im a specialist in diseases of raptors arising 
> from acid rain pollution, which causes 
> infertility, taking part in a study involving 
> tagging wild birds and checking their nests. 
> Many, maybe all, of the birds we track are sick, 
> but they all fly.
> 
> BTW, there is a terminological issue arising 
> here.  In at least one reading, rules like this 
> which are explicit about "normally" can be viewed 
> as monotonic.  And the last example is monotonic 
> on any reading (since it omits the "normally").
> 
> >...
> >
> >I think I know what your counter-case would be, but how would you express
> >this kind of stuff monotonically? You would need a bunch of exceptions and
> >every time you add another exception you would change some of your previous
> >formulas.
> 
> No, there are many other alternatives.  You don't 
> need to have an explicit list of exceptions, all 
> that is required is that there is a reference to 
> some proposition which 'stands for' the 
> exceptions (or more exactly, the truth of any 
> exceptional condition.) You could use for example 
> McCarthy's circumscription technique, and 
> transcribe them as 'normal birds fly', etc.., 
> from which it then follows monotonically that a 
> non-flying bird (such as a sick bird or penguin) 
> is not a normal bird.  The pattern is more like:
> 
> foo is a normal bird
> normal birds fly
> ->
> foo flies
> 
> normal birds fly
> not (foo  flies)
> -> (modus tollens)
> not (foo is a normal bird)
> 
> both of which are monotonic inferences. The nonmonotonic step then would be
> 
> foo is a bird
> -?->
> foo is a normal bird
> 
> And if you want to make an circumscription-style 
> assumption that all your birds are normal (unless 
> you have been told otherwise) then by all means 
> go ahead: I don't want to prevent anyone DOING 
> nonmonotonic inference in the privacy of their 
> own inference engine. My point is only that the 
> semantics underlying SWeb communication, the 
> semantics built into the information exchange 
> protocols, needs to be monotonic. As long as you 
> have some explicit way to encode that 'normally' 
> part of your rules, and so distinguish 'birds 
> normally fly' from 'birds fly', then we have no 
> disagreement. That is exactly what I want to do 
> as well.
> 
> All that said, however, there is a real practical 
> problem with 'normally' reasoning and 
> circumscription, which is how to evaluate what 
> happens when different notions of 'normal' (or 
> 'typical') clash. This is of course an old 
> observation (interacting defaults, for example) 
> but its being old doesn't make it go away.  And 
> on the Web, the possibilities for communication 
> breakdown are amplified. Birds normally fly most 
> of the time, but if we are talking about birds in 
> the Antarctic then its not so clear what counts 
> as 'normal', etc.. Fact is, "normal" is kind of 
> context-dependent in its meaning. It would be a 
> lot safer, and more informative, if such a rule 
> could mention explicitly an intended class  of 
> birds, and say that normally *in that class*, 
> birds fly; and then a reader (particularly a 
> reader as dirt-stupid as your average SW agent) 
> can be alerted to the dangers of applying it to a 
> small subclass, or a different class altogether. 
> It would be more informative and safer still if 
> it could give actual statistics, like "over 95% 
> of birds in the class fly".
> 
> If I may hazard an ad-hominem guess here for a 
> second, I suspect that your use of the 
> (Sweb-agent= human) analogy might be distorting 
> your intuition. People like us are not 
> consciously aware of using rules like "over 95% 
> of birds in this class fly", and we certainly 
> don't say things like that to one another. But 
> (a) what people do is kind of irrelevant, and (b) 
> it really is not clear what actually is going on 
> inside people's heads when they reason: and (c) 
> for sure, what is actually going on is a lot more 
> complicated than what it 'feels' like to the 
> thinker, or what people say to one another. We 
> certainly don't think using natural language, and 
> there is lots of evidence that we unconsciously 
> do things like make fine-grained numerical 
> estimates of relative likelihoods which we are 
> quite unable to sense by introspection; and that 
> when we do reason, we are using far, far more 
> information than we are consciously aware of, or 
> ever actually say explicitly to one another in 
> natural language.
> 
> >This is not compositional. Furthermore, your monotonic rules are much less
> >useful to me than the above non-monotonic ones.
> >
> >Note that the non-mon rules will give correct answer most of the time -- just
> >like humans. Do you have a set of monotonic rules that gives a correct
> >answer *all* the time?
> >If I understand correctly what you have in mind, then your system will be
> >giving the answer "I don't know" most of the time. In my view this is not
> >as useful as giving a correct answer most of the time.
> 
> The system I prefer will be giving answers of the 
> general form "assuming everything is normal, foo 
> flies"  or maybe "assuming foo is a normal bird, 
> ..." where of course the qualification, being 
> generic, could be understood or implicit in a 
> real QA protocol (though it should be explicit 
> for the reasoners under the hood.) And I would 
> prefer it to have a more structured account of 
> "normal", if at all possible.
> 
> >  > >The brittleness argument against non-monotonic reasoning is a red
> >>  >herring.
> >>
> >>  I fundamentally disagree. It is absolutely central to the SWeb.
> >
> >Where is a proof of this statement?  I would consider believing this if
> >you produce a useful and non-trivial example to back this up.
> >The onus is on you, since you are the one making the sweeping statements :-)
> 
> Well, the point seems to be widely accepted, but 
> it also seems kind of obvious. It has to do with 
> publishing content on the Web. If A publishes X 
> which is later read by B, and B has no access to 
> any of the context that A is assuming, then the 
> semantic protocols defining the information that 
> is conveyed from A to B by X have to assume that 
> this information is independent of the context. 
> Since A cannot, by the very nature of the WWW 
> architecture, possibly know what other 
> information may be available to B and combined 
> with X to draw conclusions, the meaning of X has 
> to be monotonic.
> 
> >  > >People use non-monotonic reasoning in their daily life because it
> >>  >is useful most of the time. I see no reason why Semantic Web should be
> >>  >different.
> >>
> >>  I see many reasons.  Daily life is irrelevant
> >>  (with that argument, we ought to have our SW
> >>  agents talking in English): the point in what you
> >>  say is that PEOPLE use these reasoning patterns.
> >>  Sure, people do: people are a lot smarter than SW
> >>  inference engines are likely to get; and people
> >>  have access to exactly the relevant contextual
> >>  background assumptions that the SW *formalisms*
> >>  do not provide. You and I both know that SS
> >>  numbers are unique identifiers and that lists of
> >>  local cinemas are likely to be closed worlds for
> >>  checking movie times, and so on (and on).  Put
> >>  yourself in an alien cultural context where you
> >>  don't know things like this, and you will
> >>  probably behave very differently, or make
> >>  terrible gaffes in your reasoning, or maybe both.
> >>  If all this contextual information were to be
> >>  made explicit, things like
> >>  unique-name/closed-world reasoning would be
> >>  monotonic.
> >>
> >>  In fact, I think that people almost never use
> >>  true nonmonotonic reasoning. We use shortcuts,
> >>  for sure (check out the 'recognition heuristic'):
> >  > but we they find they are wrong, we acknowledge
> >>  that they were wrong and change our minds;
> >>  moreover, there are lots of well-documented
> >>  effects in cognitive psychology which seem to
> >>  show that even unconsciously, we are very
> >>  sensitive to logical inconsistencies, eg the many
> >>  varieties of 'cognitive dissonance'. That is
> >>  fundamentally monotonic reasoning.  A true nonmon
> >>  reasoner wouldn't even notice that it had a
> >>  contradiction to resolve, and it wouldn't need to
> >>  change its mind. We say: tweety is a bird, so
> >>  tweety can fly. Oh, wait, tweety is a penguin: I
> >>  was wrong, tweety can't fly. It would say: Tweety
> >>  is a bird, tweety can fly, tweety is a penguin,
> >>  now tweety can't fly.... so? (This is an aside.
> >>  The main point is that people are a hell of a lot
> >  > smarter than anyone knows how to automate, so
> >>  what people do is irrelevant; and in any case, we
> >>  don't really know what people do.)
> >
> >I don't know how to respond to these two paragraphs of belle letters.
> >There is nothing concrete to argue with. You are assuming (or claiming?) that
> >all contextual information can be made explicit
> 
> I was reacting to your argument to the effect 
> that people do it, so the SW can do it.  You 
> brought human performance into the discussion: if 
> you think that empirical results in cognitive 
> psychology constitute 'belles lettres' then maybe 
> you should stick to topics you know something 
> about.
> 
> >, and this is not my
> >experience at all.
> >
> >In another recent message, you said:
> >
> >X-sender: phayes@mail.coginst.uwf.edu
> >Message-id: <p06001f0bbc2cc3cb147d@[10.0.100.76]>
> >>  Being able to use closed-world
> >>  reasoning, unique-name reasoning, default reasoning, etc., in
> >>  situations where you know they are OK to use, provides great
> >>  benefits. What we need are ways to be able to take advantage of the
> >>  computational merits of such efficient reasoning processes, but
> >>  within a globally monotonic system of information exchange.
> >
> >So, you are acknowledging that certain forms of non-monotonic reasoning
> >are useful and you want to adopt them. Pardon if I misunderstood.
> 
> There are patterns of reasoning that are useful. 
> They are conventionally called nonmonotonic. In 
> many cases (closed world, unique name) they are 
> not intrinsically nonmonotonic. I want to find 
> ways of making them useable in an overall 
> monotonic framework.  Defaults are a rather 
> tougher case, I will concede.
> 
> >  > >While I haven't seen any convincing examples of monotonic rules that would
> >>  >cause me to want to send my agent and scoop them up, I do see reasons why I
> >>  >might want to have non-monotonic knowledge to be published. This is
> >>  >because most (if not all) rule-based applications that I've looked at use
> >>  >some kind of non-monotonicity.
> >>
> >>  They use forms of reasoning that are
> >>  conventionally thought of as nonmonotonic,
> >>  because they rely on information that is
> >>  conventionally not made explicit. If you do make
> >>  it explicit, they are often monotonic.  What I am
> >>  arguing is not to throw away or banish these
> >>  useful reasoning patterns, but to find a way to
> >>  incorporate them into a globally monotonic
> >>  framework of information interchange.
> >>
> >>  Are you sure that they really USE
> >>  nonmonotonicity? That is, they RELY on the fact
> >>  that the reasoning pattern is indeed not
> >>  monotonic, and would break if it were made
> >>  monotonic?  (An example might be a system that
> >>  did closed-world reasoning but treated its
> >>  conclusions as defaults, so that when new items
> >>  were added to the world the old conclusions would
> >>  be overridden. Now, that might be plausibly
> >>  argued to be USING nonmonotonicity, rather than
> >>  just kind of accidentally happening to be
> >>  nonmonotonic.)
> >
> >This is too subtle for me. What is the difference between "using"
> >non-monotonic reasoning and "being" non-monotonic?
> 
> The point I am apparently not getting across is 
> that many of these inference techniques are NOT 
> inherently non-monotonic. Closed world reasoning 
> , for example, is only non-monotonic when you 
> refuse to identify the closure of the world as 
> part of the hypothesis; similarly for 
> negation-as-failure. It is one thing to say that 
> these inference types are useful and should be 
> supported: they are, and should. It does not 
> however follow from this that SW inference must 
> be nonmonotonic.
> 
> Even your examples would be fine with me as long 
> as the rules do indeed somehow formally state the 
> 'normally' assumption. If I publish the claim 
> that normally, birds fly, and you make an 
> inference from that about a particular bird, then 
> it is you who has made the assumption of 
> normality.  This is not the same situation as me 
> publishing the (unqualified) claim that birds 
> fly, and then expecting, because Web logic is 
> inherently nonmonotonic, that you will be able to 
> understand that when I say birds fly, I don't 
> actually mean that birds  fly.
> 
> Here's a way to understand the distinction 
> operationally: A publishes the rule (birds fly), 
> B reads and applies it to some case (bird foo), 
> and the answer turns out to be wrong (foo doesnt 
> fly).  What went wrong? The 'globally 
> nonmonotonic logic' answer is: nothing is wrong. 
> The answer I prefer is, if A said that birds fly, 
> then A is wrong. If on the other hand A said, 
> (normally, birds fly), then B made an assumption 
> about foo (that it was normal) that turned out to 
> be wrong.  The answer I want to avoid is, A didnt 
> really mean what he seemed to mean, or that what 
> A meant was somehow context-dependent in some 
> invisible way. I want it to be possible for B's 
> understanding of the content of A's rule to be 
> unambiguous and independent of any context that A 
> might be assuming.
> 
> >What I can say is that
> >I haven't seen a rule-based system worth its salt, which is not using some
> >sort of negation as failure somewhere.
> 
> Well, Im not sure what you consider to be a 
> 'rule-based system' but if 'rule' includes Horn 
> clauses, then there are plenty of examples.
> 
> >Does it mean "using" rather than "being"? I am ok with that.
> >Then what is the argument about?
> >
> >
> >>  >If anything, I'd like them to be published
> >>  >so I could steal them :-)
> >>  >
> >>  >Seriously, though, suppose there is a service, say, a travel reservation
> >>  >service that specializes in multi-segment complex travel arrangements.
> >>  >Of necessity, such a service is going to use a form of closed-world
> >>  >assumption, since it will be looking only at a small subset of all
> >>  >available resources and make its recommendations based on that incomplete
> >>  >knowledge.
> >>
> >>  It will base its conclusion on what it knows, to
> >>  be sure. That doesnt make it inherently
> >>  closed-world reasoning.  Closed-world reasoning
> >>  means that from a failure to find some atomic
> >>  sentence, you *conclude* that it is *false*. You
> >>  can make a recommendation based on what you know
> >>  without drawing that conclusion.
> >
> >If the system makes inferences based on the fact that it failed to prove
> >the contrary, then you are using closed-world reasoning.
> 
> Sure. I have no quarrel with closed-world 
> reasoning; I just don't want to get it muddled up 
> with open-world reasoning.  Closed world 
> reasoning is monotonic provided you refer to the 
> closed world as a suitable antecedent. I look up 
> 'Joe' in a DB called employees and don't find him 
> there; AND I know the DB has all the employees in 
> it. Joe's not being an employee is a monotonic, 
> deductive consequence of all that. If you know 
> explicitly that the list of facts you are 
> searching through is complete, then NAF is 
> logically valid. It only seems non-monotonic if 
> you forget to mention the fact that the database 
> is complete.  There is nothing inherently 
> nonmonotonic about closed-world reasoning or 
> unique-name reasoning or NAF.
> 
> >You are simply refusing to call a spade a spade.
> 
> I want to keep the spades distinct from the forks.
> 
> >  > >If it can't find a car rental somewhere, it will assume there
> >>  >isn't one and will try to find the next best alternative.
> >>
> >>  No. It will assume that it can't rent a car and
> >>  move on to the next alternative. That's not
> >>  nonmonotonic: that's just being usefully
> >>  pragmatic. If it published a conclusion that
> >>  there were no rental cars (not that it couldnt
> >>  find any - that is just flat true - but that
> >>  there really were none), or if it drew a
> >  > conclusion about some other matter from this
> >>  assumption, then it would be nonmonotonic.  In
> >>  practice if it is reporting directly to humans in
> >>  a web-service context then the difference between
> >  > "there are none" and "I know of none" is likely
> >>  to not matter much since the human will treat the
> >>  former as though it meant the latter: but it
> >>  might make a lot of difference in, say, a
> >>  homeland security application, or in a reasoner
> >>  which is deciding agent security policy questions.
> >
> >If it can't find a car, it would recommend me to use hotel A.
> >If the set of premises changes and some car shows up in the database then
> >it would recommend hotel B and not A. This is non-monotonic.
> 
> If the conclusion has the form: given what I 
> know, I recommend A, then it can be monotonic. 
> Make the (changing) assumptions explicit, or even 
> just provide an indexing device - a name for the 
> assumption-set -  and it is, or can be, 
> monotonic. It also would follow monotonically 
> that when the advice changed, the assumptions on 
> which is was based must have changed. (Obviously 
> this is over-simplified: in real cases you might 
> just have done more inference, and the inputs 
> might have had conflicting requirements which 
> were resolved differently, whatever. In fact in 
> REALLY real cases, the advice given probably 
> isn't a logical consequence of anything at all, 
> monotonic or otherwise, as Drew likes to point 
> out.)
> 
> >  > >Why would I want to have some specification of such a service published?
> >>  >Because I might be able to reason about how the service works. This service
> >>  >may require multiple interactions and my credit card may be charged several
> >>  >times. I might determine, for example, that the service won't charge my
> >>  >card unless there is a way to back out of the corresponding part of the
> >>  >deal or there is travel insurance provided, or ....
> >>
> >>  OK to all that. But notice that is all META
> >>  information about the service. You can
> >>  monotonically express meta-information about
> >>  anything, even C++ code.  That has nothing to do
> >>  with the non-monotonicity of the rules used in
> >>  the system itself.
> >
> >I was giving an example where it is useful to publish non-monotonic rules.
> >You are saying is that in this example I am reasoning not "with" those
> >rules, but rather "about" those rules.  Fair enough.
> >
> >Let's say I invoke this service as a query to find out something.
> >Querying is reasoning, and if those rules use a form of negation
> >as failure (which will be the case in most complex systems) then
> >it would be an example of reasoning with published non-mon rules.
> >
> 
> If I follow you here, you are saying that if the 
> rules are nonmon, then the rules are nonmon. Hard 
> to argue with that, but what is the point being 
> made, exactly?
> 
> Pat
> 
> >	--michael 
> >
> >
> >>  BTW, to do this kind of reasoning about any
> >>  nontrivial system (monotonic or otherwise) is
> >>  going to involve you in some heavy-duty
> >>  reasoning.  To make your case here more strongly,
> >>  you might try arguing that *that* reasoning has
> >>  to be done non-monotonically.  I'd be interested
> >>  to see any arguments made along those lines.
> >>
> >>  Pat
> >>
> >>  >
> >>  >
> >>  >	--michael 
> >>  >
> >>  >
> >>  >pat hayes <phayes@ihmc.us> writes:
> >>  >>
> >>  >>  Re. the (forever ongoing and interminable) debate about the merits of
> >>  >>  otherwise of nonmon reasoning.
> >>  >>
> >>  >>  Bottom line: nonmon reasoning is brittle (by definition) but can be
> >>  >>  very efficient. So when you know it won't break, by all means use it.
> >>  >>  But it seems to me that it is up to its proponents to justify or
> >>  >>  explain how we can have nonmon formalisms being used in a Webbish
> >>  >>  context, where the brittleness (or if you prefer,
> >>  >>  context-sensitivity) seems on the face of it to be an unsurmountable
> >>  >>  barrier to deployment, since there is no way for a reader of some
> >>  >>  nonmon rules to know what the intended context is; and when used out
> >>  >>  of context, nonmon rules are almost always wrong, and can produce
> >>  >>  potentially dangerous errors. (Note, this is only referring to the
> >>  >>  *publication* of nonmon rules on a Web, not to their *use* in some
> >>  >>  application where it is known they are appropriate, or one is willing
> >>  >>  to take the risk of using them in any case.)
> >>  >>
> >>  >>  So far, the only response Ive heard on this point is a kind of
> >>  >>  blustery denial: a claim that the Sweb just isn't going to be like
> >  > >>  the WWWeb, but more like an intranet, where all the users will just
> >>  >>  know, or will be told by the owner, or will agree among themselves in
> >>  >>  managers' meetings, which worlds are closed and which namespaces
> >>  >>  satisfy the unique-names assumption and so on; so the problem will be
> >>  >>  avoided by what might be called Web-external contextual agreements. I
> >>  >>  refuse to take this answer seriously: it seems to me to just be a
> >>  >>  statement to the effect that one is not working on the semantic web
> >>  >  > at all.
> >>  >>
> >>  >>  Anyone got any other answers? Until someone has, I would suggest that
> >  > >>  all talk about nonmon systems be ruled out of order.  Its not enough
> >>  >>  to observe in a general kind of way that nonmon systems are useful
> >>  >>  (no argument) or that they are in widespread use and all the best
> >>  >>  companies have them and they make a lot of money (irrelevant) or that
> >>  >>  they solve this or that famous problem (they usually don't, in any
> >>  >>  case). There is a basic technical issue that needs to be addressed.
> >>  >>  Address it, or else please shut up about them.
> >>  >>
> >>  >>  Pat
> >>  >>
> >>  >>  --
> >>  >>  ---------------------------------------------------------------------
> >>  >>  IHMC	(850)434 8903 or (650)494 3973   home
> >>  >>  40 South Alcaniz St.	(850)202 4416   office
> >>  >>  Pensacola			(850)202 4440   fax
> >>  >>  FL 32501			(850)291 0667    cell
> >>  >>  phayes@ihmc.us       http://www.ihmc.us/users/phayes
> >>  >>
> >>  >>
> >>  >>
> >>
> >>
> >>  --
> >>  ---------------------------------------------------------------------
> >>  IHMC	(850)434 8903 or (650)494 3973   home
> >>  40 South Alcaniz St.	(850)202 4416   office
> >>  Pensacola			(850)202 4440   fax
> >>  FL 32501			(850)291 0667    cell
> >>  phayes@ihmc.us       http://www.ihmc.us/users/phayes
> >>
> >>
> >>
> 
> 
> -- 
> ---------------------------------------------------------------------
> IHMC	(850)434 8903 or (650)494 3973   home
> 40 South Alcaniz St.	(850)202 4416   office
> Pensacola			(850)202 4440   fax
> FL 32501			(850)291 0667    cell
> phayes@ihmc.us       http://www.ihmc.us/users/phayes
> 
> 
> 

Received on Sunday, 18 January 2004 03:21:57 UTC