This file is indexed.

/usr/share/acl2-4.3/books/meta/term-lemmas.lisp is in acl2-books-source 4.3-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 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
; ACL2 books on arithmetic metafunctions
; Copyright (C) 1997  Computational Logic, Inc.

; This book is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2 of the License, or
; (at your option) any later version.

; This book is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.

; You should have received a copy of the GNU General Public License
; along with this book; if not, write to the Free Software
; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

; Written by:  John Cowles and Matt Kaufmann
; Computational Logic, Inc.
; 1717 West Sixth Street, Suite 290
; Austin, TX 78703-4776 U.S.A.



(in-package "ACL2")

(include-book "term-defuns")

(defthm delete-non-member
  (implies (not (memb x y))
           (equal (del x y) y)))

(defthm member-delete
     (implies (memb x (del u v))
	      (memb x v)))

(defthm delete-commutativity
     (equal (del x (del y z))
	    (del y (del x z))))

(defthm subbagp-delete
     (implies (subbagp x (del u y))
	      (subbagp x y)))

(defthm subbagp-cdr1
     (implies (and (subbagp x y)
                   (consp x))
	      (subbagp (cdr x) y)))

(defthm subbagp-cdr2
     (implies (and (subbagp x (cdr y))
                   (consp y))
	      (subbagp x y)))

(defthm subbagp-bagint1
     (subbagp (bagint x y) x))

(defthm subbagp-bagint2
     (subbagp (bagint x y) y))

(defthm memb-append
  (equal (memb a (append x y))
         (or (memb a x)
             (memb a y))))

(defthm binary-op_tree-opener
  (and (implies (not (consp lst))
                (equal (binary-op_tree binary-op-name constant-name fix-name lst)
                       (list 'quote constant-name)))
       (equal (binary-op_tree binary-op-name constant-name fix-name (cons x lst))
              (cond
               ((not (consp lst))
                (list fix-name x))
               ((and (consp lst)
                     (not (consp (cdr lst))))
                (list binary-op-name x (car lst)))
               (t (list binary-op-name x
                        (binary-op_tree binary-op-name constant-name fix-name
                                        lst)))))))

(defthm binary-op_tree-simple-opener
  (and (implies (not (consp lst))
                (equal (binary-op_tree-simple binary-op-name constant-name lst)
                       (list 'quote constant-name)))
       (equal (binary-op_tree-simple binary-op-name constant-name (cons x lst))
              (cond
               ((not (consp lst))
                x)
               (t (list binary-op-name x
                        (binary-op_tree-simple binary-op-name constant-name
                                               lst)))))))

(defthm fringe-occur-same-as-occur-in-fringe
  (equal (fringe-occur binop arg term)
         (memb arg (binary-op_fringe binop term))))