Return-Path:
Return-Path: <john.harrison-request@uk.ac.cam.cl>
Received: from ted.cs.uidaho.edu by swan.cl.cam.ac.uk with SMTP (PP-6.0)
          id <04247-0@swan.cl.cam.ac.uk>; Tue, 10 Mar 1992 07:20:42 +0000
Received: by ted.cs.uidaho.edu (16.6/1.34) id AA02729;
          Mon, 9 Mar 92 23:10:32 -0800
Sender: info-hol-request@edu.uidaho.cs.ted
Errors-To: info-hol-request@edu.uidaho.cs.ted
Received: from Maui.CS.UCLA.EDU by ted.cs.uidaho.edu (16.6/1.34) id AA02703;
          Mon, 9 Mar 92 23:10:26 -0800
Received: from LocalHost.cs.ucla.edu
          by maui.cs.ucla.edu (Sendmail 5.61b+YP/3.13) id AA16050;
          Mon, 9 Mar 92 23:13:05 -0800
Message-Id: <9203100713.AA16050@maui.cs.ucla.edu>
To: info-hol@edu.uidaho.cs.ted
Cc: chou@edu.ucla.cs
Subject: Theorem continuation functions
Date: Mon, 09 Mar 92 23:13:04 PST
From: chou@edu.ucla.cs

I like to use theorem continuation functions to "capture" assumptions.
For instance, suppose I want to prove "A ==> B" for some terms A and B.
Instead of using DISCH_TAC to add A to the set of assumptions and then
worrying about how to get to A again, I would write something like:

(*)     DISCH_THEN (\asm. rest_of_the_proof)

Thus, A is bound to ML identifier asm and can be referred to easily
within rest_of_the_proof as a theorem.  The trouble is that such
tactics are hard to test.  What I usually ended up doing was to
re-run (*) every time I make a refinement to rest_of_the_proof.
Is there a better way?

Any ideas would be appreciated!

- Ching Tsun

