Rob, thanks for the excellent post!  Let me more clearly tell you what I think 
I'm doing, using your terminology, and maybe we can discuss your classes a--e.

Take HOL Light and possibly some extra types, constants and axioms created by 
commands like new_type, new_constant, and new_axiom.  Let S be the set of 
sequents, and T be the subset of S consisting of the sequents which are 
theorems, i.e. which have HOL Light formal proofs.  

Let me ask a dumb question right now: Is T a model?

I contend that we can give informal mathematical theorems about the set T.  All 
our HOL Light axioms  become informal mathematical theorems, e.g. 

Axiom REFL:
For any term t, the sequent 
|- t = t
is a theorem (i.e. belongs to the set T).  

Axiom INST: 
For any theorem 
A |- t 
and any list of variables x1,...,xn and terms t1,...,tn such that xi and ti 
have the same type, such that none of the free variables of t1,...,tn occur are 
bound variables of t, we have the theorem 
A |- t[t1,...,tn/x1,...,xn]

Then we can prove consequences of the axioms, such as the one you explained to 
me was easy:

Theorem BETA_CONV:
For any variable v and any terms bod and arg, the sequent
|- ((\v. bod) arg) = bod[arg,v] 
is a theorem (i.e. belongs to the set T). 

Proof:
By axiom BETA, the sequent
|- ((\v. bod) v) = bod
is a theorem.  Now applying axiom INST with [arg,v]  and this theorem.
\qed

Let me now try to place myself in your a--e.  If T is a model, then it looks 
like I'm working in your class (a):

   (a) Informal mathematical proofs that an assertion is valid in some
   agreed model (or set of models) of a language.

Is T only a model if we have soundness?  I contend we can prove informal 
theorems about T even if we don't have soundness, or haven't proved we have 
soundness.  In any case I'm not going to make any soundness arguments or 
claims, and that rules out your class (b).  

Whether T is a model or not, I think it obvious to everyone that these informal 
mathematical proofs about the set T will imply that the corresponding formal 
HOL Light proofs exist, and that sounds like I'm working in class (c) as well: 

   (c) Informal mathematical proofs that an assertion is provable in
   some agreed deductive system.

I would then agree with you that 

   Your point (3) is about class (a) or (c).   

However, I think I disagree with you about class (d): 

   When you talk about "informal mathematical proofs of the FOL rules
   of HOL” you are in class (b) or (d).

I think I'm still in class (a) or (c) when I do this.  I'm certainly not in 
class (b), lacking your elaborate apparatus, as I think you noted:

   I think the apparatus you need to do soundness proofs (class (b))
   is more elaborate than that for admissibility proofs (class (d)).

But I don't see why my I'm informal proofs of that "HOL implies FOL" puts me in 
your class (d):

   (d) Informal mathematical proofs that a new rule of inference is
   admissible in some agreed deductive system. I.e., informal
   mathematical proofs that if an assertion can be proved using the
   new rule of inference, then it can be proved using only the axioms
   and inference rules of the deductive system. (In the cases in point
   here, this can done by giving a schematic derivation of the new
   rule of inference as a combination of the inference rules of the
   deductive system.)

Perhaps I don't even understand what class (d) means.  Let's take my last 
informal theorem of the HOL implies FOL sort, updated with your new 
terminology: 

Theorem CONJUNCT1:
Let l and r be terms and A be a set of assumptions such that we have the 
theorem.  
A |- l ∧ r.  Then we have the theorem A |- l.

Proof:
Since ∧ has type bool->bool->bool, l and r both have type bool.
By theorem ALPHA, the AND_DEF theorem, and axiom TRANS, we have the theorem 
|- (∧) = (λp' q'. (λf':bool->bool->bool. f' p' q') = (λf'. f' T T))
where f', p' and q' are not free in either l or r. Applying theorem AP_THM 
twice to the AND_DEF sequent l, and r we have the theorem 
|- (∧) l r = (λp' q'. (λf':bool->bool->bool. f' p' q') = (λf'. f' T T)) l r.
Applying theorem BETA_CONV and axiom TRANS twice to the RHS yields
|- l ∧ r = ((λf':bool->bool->bool. f' l r) = (λf'. f' T T)).
Since we have the theorem A |- l ∧ r by assumption, axiom EQ_MP yields the 
theorem
A |- (λf':bool->bool->bool. f' l r) = (λf'. f' T T)
Choose free variables p and q of type bool that are not free in l or r.   
Applying AP_THM to this equation theorem and the term (λp q. p) yields the 
theorem 
A |- (λf':bool->bool->bool. f' l r) (λp q. p) = (λf'. f' T T) (λp q. p).  
Applying theorem BETA_CONV, axiom TRANS and theorem SYM a number of times, we 
obtain the theorem
A |- l = T.
By theorem EQT_ELIM, we're done.
\qed

Now I don't see any difference between this informal mathematical theorem and 
theorem BETA_CONV above.  I don't see why we need an extra class just because 
we're working out the FOL rules in HOL.  Quite likely I'm missing some 
important point here. 

-- 
Best,
Bill 

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
hol-info mailing list
hol-info@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hol-info

Reply via email to