(module defthm mzscheme
(require (lib "package.ss"))
(provide defthm defthm/local defaxiom)
(define-syntax (defthm/local stx)
(syntax-case stx ()
[(_ name body hints ...)
(if #f #'(begin)
#'(define* 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 ...))]))
)