File: NQTHM-TO-ACL2.html

package info (click to toggle)
acl2 3.1-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 36,712 kB
  • ctags: 38,396
  • sloc: lisp: 464,023; makefile: 5,470; sh: 86; csh: 47; cpp: 25; ansic: 22
file content (201 lines) | stat: -rw-r--r-- 7,819 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
<html>
<head><title>NQTHM-TO-ACL2.html  --  ACL2 Version 3.1</title></head>
<body text=#000000 bgcolor="#FFFFFF">
<h2>NQTHM-TO-ACL2</h2>ACL2 analogues of Nqthm functions and commands
<pre>Major Section:  <a href="DOCUMENTATION.html">DOCUMENTATION</a>
</pre><p>


<pre>
Example Forms:
:nqthm-to-acl2 prove-lemma   ; Display ACL2 topic(s) and/or print
                             ; information corresponding to Nqthm
                             ; PROVE-LEMMA command.
(nqthm-to-acl2 'prove-lemma) ; Same as above.
<p>
General Form:
(nqthm-to-acl2 name)
</pre>

where <code>name</code> is a notion documented for Nqthm:  either a function
in the Nqthm logic, or a command.  If there is corresponding
information available for ACL2, it will be printed in response to
this command.  This information is not intended to be completely
precise, but rather, is intended to help those familiar with Nqthm
to make the transition to ACL2.<p>

We close with two tables that contain all the information used by
this <code>nqthm-to-acl2</code> command.  The first shows the correspondence
between functions in the Nqthm logic and corresponding ACL2
functions (when possible); the second is similar, but for commands
rather than functions.<p>


<pre>
Nqthm functions  --&gt;     ACL2
----------------------------------------
ADD1          --&gt;  1+
ADD-TO-SET    --&gt;  ADD-TO-SET-EQUAL and ADD-TO-SET-EQ
AND           --&gt;  AND
APPEND        --&gt;  APPEND and BINARY-APPEND
APPLY-SUBR    --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
APPLY$        --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
ASSOC         --&gt;  ASSOC-EQUAL, ASSOC and ASSOC-EQ
BODY          --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
CAR           --&gt;  CAR
CDR           --&gt;  CDR
CONS          --&gt;  CONS
COUNT         --&gt;  ACL2-COUNT
DIFFERENCE    --&gt;  -
EQUAL         --&gt;  EQUAL, EQ, EQL and =
EVAL$         --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
FALSE         --&gt;  Nqthm's F corresponds to the ACL2 symbol NIL.
FALSEP        --&gt;  NOT and NULL
FORMALS       --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
GEQ           --&gt;  &gt;=
GREATERP      --&gt;  &gt;
IDENTITY      --&gt;  IDENTITY
IF            --&gt;  IF
IFF           --&gt;  IFF
IMPLIES       --&gt;  IMPLIES
LEQ           --&gt;  &lt;=
LESSP         --&gt;  &lt;
LISTP         --&gt;  CONSP
LITATOM       --&gt;  SYMBOLP
MAX           --&gt;  MAX
MEMBER        --&gt;  MEMBER-EQUAL, MEMBER and MEMBER-EQ
MINUS         --&gt;  - and UNARY--
NEGATIVEP     --&gt;  MINUSP
NEGATIVE-GUTS --&gt;  ABS
NLISTP        --&gt;  ATOM
NOT           --&gt;  NOT
NUMBERP       --&gt;  ACL2-NUMBERP, INTEGERP and RATIONALP
OR            --&gt;  OR
ORDINALP      --&gt;  O-P
ORD-LESSP     --&gt;  O&lt;
PACK          --&gt;  See intern and coerce.
PAIRLIST      --&gt;  PAIRLIS$
PLUS          --&gt;  + and BINARY-+
QUOTIENT      --&gt;  /
REMAINDER     --&gt;  REM and MOD
STRIP-CARS    --&gt;  STRIP-CARS
SUB1          --&gt;  1-
TIMES         --&gt;  * and BINARY-*
TRUE          --&gt;  The symbol T.
UNION         --&gt;  UNION-EQUAL and UNION-EQ
UNPACK        --&gt;  See symbol-name and coerce.
V&amp;C$          --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
V&amp;C-APPLY$    --&gt;  No correspondent, but see the documentation for
                   DEFEVALUATOR and META.
ZERO          --&gt;  The number 0.
ZEROP         --&gt;  ZP<p>

========================================<p>

Nqthm commands   --&gt;     ACL2
----------------------------------------
ACCUMULATED-PERSISTENCE
              --&gt;  ACCUMULATED-PERSISTENCE
ADD-AXIOM     --&gt;  DEFAXIOM
ADD-SHELL     --&gt;  There is no shell principle in ACL2.
AXIOM         --&gt;  DEFAXIOM
BACKQUOTE-SETTING
              --&gt;  Backquote is supported in ACL2, but not
                   currently documented.
BOOT-STRAP    --&gt;  GROUND-ZERO
BREAK-LEMMA   --&gt;  MONITOR
BREAK-REWRITE --&gt;  BREAK-REWRITE
CH            --&gt;  PBT
                   See also :DOC history.
CHRONOLOGY    --&gt;  PBT
                   See also :DOC history.
COMMENT       --&gt;  DEFLABEL
COMPILE-UNCOMPILED-DEFNS
              --&gt;  COMP
CONSTRAIN     --&gt;  See :DOC encapsulate and :DOC local.
DATA-BASE     --&gt;  Perhaps the closest ACL2 analogue of DATA-BASE
                   is PROPS.  But see :DOC history for a collection
                   of commands for querying the ACL2 database
                   (``world'').  Note that the notions of
                   supporters and dependents are not supported in
                   ACL2.
DCL           --&gt;  DEFSTUB
DEFN          --&gt;  DEFUN and DEFMACRO
DEFTHEORY     --&gt;  DEFTHEORY
DISABLE       --&gt;  DISABLE
DISABLE-THEORY
              --&gt;  See :DOC theories.  The Nqthm command
                   (DISABLE-THEORY FOO) corresponds roughly to the
                   ACL2 command
                   (in-theory (set-difference-theories
                                (current-theory :here)
                                (theory 'foo))).
DO-EVENTS     --&gt;  LD
DO-FILE       --&gt;  LD
ELIM          --&gt;  ELIM
ENABLE        --&gt;  ENABLE
ENABLE-THEORY --&gt;  See :DOC theories.  The Nqthm command
                   (ENABLE-THEORY FOO) corresponds roughly to the
                   ACL2 command
                   (in-theory (union-theories
                                (theory 'foo)
                                (current-theory :here))).
EVENTS-SINCE  --&gt;  PBT
FUNCTIONALLY-INSTANTIATE
              --&gt;  ACL2 provides a form of the :USE hint that
                   corresponds roughly to the
                   FUNCTIONALLY-INSTANTIATE event of Nqthm. See
                   :DOC lemma-instance.
GENERALIZE    --&gt;  GENERALIZE
HINTS         --&gt;  HINTS
LEMMA         --&gt;  DEFTHM
MAINTAIN-REWRITE-PATH
              --&gt;  BRR
MAKE-LIB      --&gt;  There is no direct analogue of Nqthm's notion of
                   ``library.''  See :DOC books for a description
                   of ACL2's mechanism for creating and saving
                   collections of events.
META          --&gt;  META
NAMES         --&gt;  NAME
NOTE-LIB      --&gt;  INCLUDE-BOOK
PPE           --&gt;  PE
PROVE         --&gt;  THM
PROVEALL      --&gt;  See :DOC ld and :DOC certify-book.  The latter
                   corresponds to Nqthm's PROVE-FILE,which may be
                   what you're interested in,really.
PROVE-FILE    --&gt;  CERTIFY-BOOK
PROVE-FILE-OUT
              --&gt;  CERTIFY-BOOK
PROVE-LEMMA   --&gt;  DEFTHM
                   See also :DOC hints.
R-LOOP        --&gt;  The top-level ACL2 loop is an evaluation loop as
                   well, so no analogue of R-LOOP is necessary.
REWRITE       --&gt;  REWRITE
RULE-CLASSES  --&gt;  RULE-CLASSES
SET-STATUS    --&gt;  IN-THEORY
SKIM-FILE     --&gt;  LD-SKIP-PROOFSP
TOGGLE        --&gt;  IN-THEORY
TOGGLE-DEFINED-FUNCTIONS
              --&gt;  EXECUTABLE-COUNTERPART-THEORY
TRANSLATE     --&gt;  TRANS and TRANS1
UBT           --&gt;  UBT and U
UNBREAK-LEMMA --&gt;  UNMONITOR
UNDO-BACK-THROUGH
              --&gt;  UBT
UNDO-NAME     --&gt;  See :DOC ubt.  There is no way to undo names in
                   ACL2 without undoing back through such names.
                   However, see :DOC ld-skip-proofsp for
                   information about how to quickly recover the
                   state.
</pre>


<br><br><br><a href="acl2-doc.html"><img src="llogo.gif"></a> <a href="acl2-doc-index.html"><img src="index.gif"></a>
</body>
</html>