#include "xf_security/vdf.hpp"
template < int L, int N > bool verifyPietrzak ( ap_uint <L> g, ap_uint <L> modulus, ap_uint <L> r2Mod, ap_uint <N> T, ap_uint <L> y )
verifyPietrzak verify function of verifiable delay function, its algorithm: if T is even, return (N, x, T/2, y) = (N, x^(r+2^(T/2)), T/2, x^(r*2^(T/2)+2^T)), if T is odd, return (N, x, (T+1)/2, y) = (N, x^(r+2^((T-1)/2)), T/2, x^(r*2^((T+1)/2)+2^T))
Parameters:
| L | bit width |
| N | bit width |
| g | is the base element given as input to the VDF evaluator |
| modulus | is a security parameter |
| r2Mod | Pre-calculated Montgomery parameter |
| T | is a time bound |
| y | is output of evaluate |