Convert a parameter declaration to a regular declaration.
(param-declon-to-decl paramdecl init?) → (mv success decl)
Function:
(defun param-declon-to-decl (paramdecl init?) (declare (xargs :guard (and (param-declonp paramdecl) (initer-optionp init?)))) (let ((__function__ 'param-declon-to-decl)) (declare (ignorable __function__)) (b* (((param-declon paramdecl) paramdecl)) (param-declor-case paramdecl.declor :nonabstract (mv t (make-decl-decl :extension nil :specs paramdecl.specs :init (cons (initdeclor paramdecl.declor.declor nil nil init?) nil))) :otherwise (mv nil (irr-decl))))))
Theorem:
(defthm booleanp-of-param-declon-to-decl.success (b* (((mv ?success c$::?decl) (param-declon-to-decl paramdecl init?))) (booleanp success)) :rule-classes :rewrite)
Theorem:
(defthm declp-of-param-declon-to-decl.decl (b* (((mv ?success c$::?decl) (param-declon-to-decl paramdecl init?))) (declp decl)) :rule-classes :rewrite)