String-equal
String equality without regard to case
For strings str1 and str2, (string-equal str1 str2)
is true if and only str1 and str2 are the same except perhaps for
the cases of their characters.
The guard on string-equal requires that its arguments are
strings consisting of standard characters (see standard-char-listp).
String-equal is a Common Lisp function. See any Common Lisp
documentation for more information.
Function: string-equal
(defun string-equal (str1 str2)
(declare (xargs :guard (and (stringp str1)
(standard-string-p str1)
(stringp str2)
(standard-string-p str2))))
(let ((len1 (length str1)))
(and (= len1 (length str2))
(string-equal1 str1 str2 0 len1))))