if_problem

class cryptographic_estimators.IFEstimator.if_problem.IFProblem(n: int, **kwargs)

Bases: BaseProblem

Construct an instance of Integer Factoring Problem.

Parameters:

n (int) – bit length of RSA integer to factored

Construct an instance of BaseProblem.

Parameters:
  • parameters (dict) – Parameters of the problem.

  • nsolutions (int) – Number of solutions of the problem.

  • memory_bound (float, optional) – Maximum allowed memory to use for solving the problem. Defaults to inf.

expected_number_solutions()

Returns the logarithm of the expected number of existing solutions to the problem

get_parameters()

Returns the optimizations parameters

to_bitcomplexity_memory(elements_to_store: float)

Returns the memory bit-complexity associated to a given number of elements to store

Parameters:

elements_to_store (float) – The number of memory operations (logarithmic).

Returns:

The memory bit-complexity associated with the given number of elements to store.

to_bitcomplexity_time(basic_operations: float)

Returns the bit-complexity corresponding to a certain amount of basic_operations

Parameters:

basic_operations (float) – The number of field additions (in logarithmic scale).

Returns:

The bit-complexity corresponding to the given number of field additions.