8.5.1 Booleans
[70] boolean = #t | #f
The standard boolean objects for true and false are written as #t and #f.  What really matters, though, are the objects that the conditional expressions (if, cond, and, or) treat as true or false.  The phrase a true value (or sometimes just true) means any object treated as true by the conditional expressions, and the phrase a false value (or false) means any object treated as false by the conditional expressions.
Of all the standard values, only #f counts as false in conditional expressions. Except for #f, all standard values, including #t, pairs, the empty list, symbols, numbers, strings, and procedures, count as true.

NOTE 11

Programmers accustomed to other dialects of Lisp should be aware that the expression language distinguishes both #f and the empty list from the symbol nil.
Boolean constants evaluate to themselves, so they don't need to be quoted in expressions.
#t           #t
#f           #f
'#f          #f
8.5.1.1 Negation
(not obj)
not returns #t if obj is false, and returns #f otherwise.
(not #t)           #f
(not 3)            #f
(not (list 3))     #f
(not #f)           #t
(not '())          #f
(not (list))       #f
(not 'nil)         #f
8.5.1.2 Boolean Type Predicate
(boolean? obj)
boolean? returns #t if obj is either #t or #f and returns #f otherwise.
(boolean? #f)           #t
(boolean? 0)            #f
(boolean? '())          #f