-rw-r--r-- 691 cryptattacktester-20230614/parity_cost.cpp raw
#include "bit_vector_cost.h" #include "ram_cost.h" #include "parity_cost.h" bigint parity_known_cost(bigint N,bigint K) { --K; bigint R = N-K; bigint result = 0; result += R-1; // s.at(0) ^= s.at(j); result += (K+1)*(R-1); // H.at(i).at(0) ^= H.at(i).at(j); result += bit_vector_first_one_cost(K); // bit_vector_first_one(row); result += ram_read_write_cost(K,nbits(K-1),N-K); // ram_read_write(H, 0, K, idx, H.at(K)); result += ram_read_write_cost(K,nbits(K-1),nbits(N-1)); // ram_read_write(map, 0, K, idx, map.at(K)); result += (R-1)*2; // s.at(j) ^= s.at(0) & H.at(K).at(j); result += K*(R-1)*2; // H.at(i).at(j) ^= H.at(i).at(0) & H.at(K).at(j); return result; }