1.4.11 Trees
Examples: |
> (alphorder 6 4) |
'() |
> (alphorder 4 6) |
't |
> (alphorder 4 4) |
't |
> (alphorder "abc" "bcd") |
't |
> (alphorder "bcd" "abc") |
'() |
> (alphorder #\a "a") |
't |
> (alphorder "a" #\a) |
'() |
Examples: |
> (eql 'yes 'yes) |
't |
> (eql 'yes 'no) |
'() |
> (eql 5 5) |
't |
> (eql #\a #\b) |
'() |
> (eql #\5 5) |
'() |
Examples: |
> (eqlablep nil) |
't |
> (eqlablep 4) |
't |
> (eqlablep #\a) |
't |
> (eqlablep 'symbol) |
't |
> (eqlablep "string") |
'() |
(equal x y) |
Example: |
> (identity 'x) |
'x |
Examples: |
> (lexorder 6 4) |
'() |
> (lexorder 4 6) |
't |
> (lexorder #\a #\b) |
't |
> (lexorder #\b #\a) |
'() |
> (lexorder 'a 'b) |
't |
> (lexorder 'b 'a) |
'() |
> (lexorder "abc" "bcd") |
't |
> (lexorder "bcd" "abc") |
'() |
> (lexorder (list 1 2) (list 3 4)) |
't |
> (lexorder (list 3 4) (list 1 2)) |
'() |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
Examples: | |||||
| |||||
eval:84:0: defconst: defined outside of begin-below at: | |||||
here in: (defconst *tree* (cons (cons (cons (cons 0 1) | |||||
(cons 2 3)) (cons (cons 4 5) (cons 6 7))) (cons (cons (cons | |||||
8 9) (cons 10 11)) (cons (cons 12 13) (cons 14 15))))) | |||||
> (caar *tree*) | |||||
eval:85:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdar *tree*) | |||||
eval:86:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cadr *tree*) | |||||
eval:87:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cddr *tree*) | |||||
eval:88:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caaar *tree*) | |||||
eval:89:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdaar *tree*) | |||||
eval:90:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cadar *tree*) | |||||
eval:91:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cddar *tree*) | |||||
eval:92:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caadr *tree*) | |||||
eval:93:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdadr *tree*) | |||||
eval:94:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caddr *tree*) | |||||
eval:95:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdddr *tree*) | |||||
eval:96:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caaaar *tree*) | |||||
eval:97:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdaaar *tree*) | |||||
eval:98:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cadaar *tree*) | |||||
eval:99:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cddaar *tree*) | |||||
eval:100:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caadar *tree*) | |||||
eval:101:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdadar *tree*) | |||||
eval:102:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caddar *tree*) | |||||
eval:103:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdddar *tree*) | |||||
eval:104:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caaadr *tree*) | |||||
eval:105:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdaadr *tree*) | |||||
eval:106:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cadadr *tree*) | |||||
eval:107:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cddadr *tree*) | |||||
eval:108:0: application: bad syntax in: (top/error . *tree*) | |||||
> (caaddr *tree*) | |||||
eval:109:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cdaddr *tree*) | |||||
eval:110:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cadddr *tree*) | |||||
eval:111:0: application: bad syntax in: (top/error . *tree*) | |||||
> (cddddr *tree*) | |||||
eval:112:0: application: bad syntax in: (top/error . *tree*) |
(quote ...) |
Examples: |
> 'a |
'a |
> '(1 2 3 4) |
'(1 2 3 4) |
(quasiquote ...) |
Examples: |
> `a |
'a |
> `(1 2 3 4) |
'(1 2 3 4) |
(unquote ...) |
Example: |
> '(list ,a b c d) |
'(list ,'a b c d) |
Examples: |
> (subst 2 1 (list 1 1 1 3 1 1 1)) |
'(2 2 2 3 2 2 2) |
> (subst 'z 'a (list 'a 'b (list 'd 'a (list 'a 'e)) 'a)) |
'(z b (d z (z e)) z) |
(acl2-count v) → natp |
v : t |
The size of a cons-pair is one more than the sum of the sizes of its car and cdr. The size of an integer is its absolute value, the size of a rational number is the sum of the sizes of its numerator and denominator, and the size of a complex number is one more than the sum of the sizes of its real and imaginary parts. The size of a string is its length. The size of all other values (characters and symbols) is 0.
Examples: |
> (acl2-count 3/4) |
7 |
> (acl2-count (complex 3 4)) |
8 |
> (acl2-count "ABCD") |
4 |
> (acl2-count 'ABCD) |
0 |
> (acl2-count '(a b c d)) |
4 |