Hi Ken,                      

I have a few remarks about the HOL Light foundations. Part of my
objective in HOL Light was to arrive at a simpler and more satisfying
logical kernel that could nevertheless be the foundation of a
practical tool. In particular HOL Light's foundations address a couple
of the issues on which you quoted some self-criticism from the HOL
documentation: the complicated primitive substitution rule and on the
way the epsilon operator is plumbed deep into the foundations. On the
first point:

  "From a logical point of view, it would be better to have a simpler
   substitution primitive, such as 'Rule R' of Andrews' logic Q0, and
   then to derive more complex rules from it." [Gordon/Melham, 1993, 
   p. 213]

The HOL Light foundations do exactly that, adopting just simple 1-step
congruence rules MK_ABS and MK_COMB together with reflexivity,
symmetry and transitivity of equality. Although the traditional SUBST
rule is also present, it is not a primitive and in fact has rather an
involved derivation.

  In addition to Pitts' insight, the use of the description operator
  (like in Andrews' Q0) should be preferred to the use of the epsilon
  operator (used by Gordon, who already called it "suspicious"),

In HOL Light the basic logical notions including the quantifiers are
all defined independent of the epsilon operator (in contrast to its
use even to define "there exists" in the original HOL). The choice
operator is eventually introduced but it is quite late. If you look
at the sequence of "load" operations in the root file:

  https://github.com/jrh13/hol-light/blob/master/hol.ml

the epsilon operator only appears in the file "class.ml" after some
development of logical derived rules including those for automating
inductive definitions.

Ultimately, all the quantifiers and connectives in HOL Light are
defined in terms of equality alone. In this respect the foundations
are reminiscent of one of Andrews's systems, but with the distinction
that the definitions are intuitionistically admissible. (The type
definition principle is not quite intuitionistically acceptable in its
present form, but it could be made so.) Actually, it is only when the
epsilon operator is introduced that the Law of Excluded Middle is
deduced as a consequence, via a simplification due to Mark Adams of
the classic Diaconescu proof. One could alternatively introduce a
definite descriptor and much of the later material would still work
in this context.

I think there is something quite satisfying about the derivation of     
higher-order logic from these simple foundations based just on          
equality in a simple world of functions. Of course, one may find it     
rather artificial to use these intricate definitions of quantifiers,    
instead of taking them as basic which, to greater or lesser extent,     
other HOL variants do. Nevertheless, it turns out that HOL Light's      
foundations match almost perfectly a standard presentation of the       
internal logic of a topos. This was a coincidence and I only became     
aware of it when Konrad Slind pointed it out, but it provides some      
kind of support for choices I made on the general grounds of            
intellectual simplicity. I remember my astonishment when Konrad         
pointed me at sec II.2 of Lambek and Scott's "Intro to Higher-order     
categorical logic" where you find the HOL Light deductive system        
almost exactly, even down to the slightly less natural rule I call      
DEDUCT_ANTISYM_RULE (basically antisymmetry of implication in the
context of |- not ==>). Cf the Wikipedia page which has a nice summary
of the basic rules:

  https://en.wikipedia.org/wiki/HOL_Light

There is a bit more historical material about the way HOL Light and
its relatives evolved near the end of the HOL Light tutorial, starting
around p216:

  https://www.cl.cam.ac.uk/~jrh13/hol-light/tutorial_220.pdf

John.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
hol-info mailing list
hol-info@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hol-info

Reply via email to