I think it can get quite confusing because different people use the same
names for different things, and different names for the same things, and
sometimes the same people do this too!
"HOL" can mean "higher-order logic" (referring to one or more of various
logics that are higher-order), or it can mean "the HOL logic" (Mike Gordon's
particular higher-order logic, implemented by HOL4, Isabelle/HOL, HOL Light,
ProofPower and HOL Zero). Other theorem provers such as Coq, PVS and IMPS
implement other higher-order logics. So the logic described in the HOL4
logic manual really is the same as HOL Light's, etc, the only difference
being that they are built up in different ways (i.e. they start with a
different initial set of axioms and primitive inference rules, but these
axiomatisations are just different ways of defining the same logic).
Does that clear anything up?
on 1/2/13 2:23 PM, Gottfried Barrow<gottfried.barrow at gmx.com> wrote:
On 1/31/2013 1:46 PM, Yannick Duchêne (Hibou57) wrote:
Seems available on‑line; here is a link for the paper you suggest:
(the page also has a link at the top, for a PDF version)
There's a newer dated version, 20 December 2007, at the author's web
site. The published one says "received in revised form 6 August 2007".
When the gurus try to succinctly describe Isabelle/HOL, they'll many
times just use the phrase "simply typed lambda calculus".
But if they have time to type a few extra characters, they might add the
phrase "with polymorphism".
If you keep talking long enough, another one might pop in and throw in
the term "type classes".
Because there's no HOL which has yet won the HOL wars, then they use
external, historical vocabulary to begin the description of their HOL,
but then have to start attaching their own internal vocabulary to the
For someone looking for a label to label HOL with, as a starting place
to learn about HOL, it can get confusing.
If you see the phrase "simple type theory" in the title of Farmer's
paper, then you might ask, "Ah, is this what's going to tell me what
Isabelle/HOL is? Because 'simple type theory' sounds suspiciously like
'simply typed lambda calculus'".
Being an authoritative prophet, I can now say that in the future, the
HOL's which win out in the HOL wars will be the standard themselves, and
the references will be to the 700 page textbooks which formalize,
starting with the basics, what the logic of these HOLs are.
For HOL4 they already have that in their logic manual (to what degree I
can't say), which I thought would be the perfect place to learn about
Isabelle/HOL's formal logic, but it's not, it's the perfect place to
learn about HOL4's formal logic:
For completeness, I quote from Mark's glossary to show how the gurus
have to do a lot qualifying when they try to explain things:
simply-typed : (adj) Relating to type systems that are relatively simple
are not, for example, dependently-typed. There is considerable variation
precise intended meaning of "simply-typed" in contemporary usage: in some
polymorphism is not a disqualifying factor, in other usages polymorphism
a disqualifying factor if it caters for the quantification of type
and in other usages still any form of polymorphism is a disqualifying
To avoid confusion, the usage of this term is avoided in HOL Zero, its
documentation and elsewhere in this glossary.
Still looking at Gottfried's list.
In addition to collecting books, I also rip web pages for past,
educational courses on Isabelle. I haven't had time to study any of this
right now. I'm making enough progress just stumbling along. I'll get
more sophisticated later. Some of these are linked to from the official
Isabelle site, many of them aren't.