Hash no more than
(ingonyama-bls-255-hash inputs) → output
Function:
(defun ingonyama-bls-255-hash (inputs) (declare (xargs :guard (fe-listp inputs (param->prime (ingonyama-bls-255--parameters))))) (declare (xargs :guard (<= (len inputs) (param->size (ingonyama-bls-255--parameters))))) (let ((__function__ 'ingonyama-bls-255-hash)) (declare (ignorable __function__)) (let ((preimage (append (repeat (- (param->size (ingonyama-bls-255--parameters)) (len inputs)) 0) inputs))) (nth 1 (hashp preimage (ingonyama-bls-255--parameters) 2)))))
Theorem:
(defthm fep-of-ingonyama-bls-255-hash (implies (and (fe-listp inputs (param->prime (ingonyama-bls-255--parameters))) (<= (len inputs) (param->size (ingonyama-bls-255--parameters)))) (b* ((output (ingonyama-bls-255-hash inputs))) (fep output (param->prime (ingonyama-bls-255--parameters))))) :rule-classes :rewrite)