(module defthm mzscheme
(require "../define-below/define-below.ss")
(provide defthm defthm/local defaxiom)
(define-syntax (defthm/local stx)
(syntax-case stx ()
[(_ name body hints ...)
(if #f #'(begin)
#'(define-below name
(if #f
(void) '(theorem: body))))]))
(define-syntax (defthm stx)
(syntax-case stx ()
[(_ name body hints ...)
(with-syntax ([provide-form (if #f 17 #'(begin))])
#'(begin (defthm/local name body hints ...)
provide-form))]))
(define-syntax (defaxiom stx)
(syntax-case stx ()
[(_ name body hints ...) (syntax/loc stx (defthm name body hints ...))]))
)