W3C home > Mailing lists > Public > public-qt-comments@w3.org > September 2006

[Bug 1680] [FS] editorial: 4.12.5 Constructor Functions

From: <bugzilla@wiggum.w3.org>
Date: Wed, 13 Sep 2006 01:51:29 +0000
CC:
To: public-qt-comments@w3.org
Message-Id: <E1GNJuT-0005oQ-76@wiggum.w3.org>

http://www.w3.org/Bugs/Public/show_bug.cgi?id=1680


jmdyck@ibiblio.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |




------- Comment #6 from jmdyck@ibiblio.org  2006-09-13 01:51 -------
(In reply to comment #5)
> Implemented the inference rule with all the 4 suggested fixes, plus the
> corresponding change to the normalization of function calls.

For the latter change, you missed the "not(...)" in premise 2.

However, I've just realized that (even with the "not()") that premise won't
work, because QName2 and AtomicTypeDerivation are unconstrained, so there's
always bindings for them (in fact, infinitely many) that will make the body of
the not() false, and thus the premise true, including all the cases where you
don't want it to be.

One way to fix this is to introduce an auxiliary judgment:

    statEnv.typeDefn(expanded-QName) = define type QName2 AtomicTypeDerivation
    --------------------------------------------------------------------------
    expanded-QName denotes a constructor function

then replace premise 2 with

    not( expanded-QName denotes a constructor function )
Received on Wednesday, 13 September 2006 02:09:44 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:45:30 UTC