test_circuits module

test_circuits.test_calculate_parity_even()

Checks the parity is properly calculated for an even parity bit string

test_circuits.test_calculate_parity_odd()

Checks the parity is properly calculated for an odd parity bit string

test_circuits.test_calculate_simple_parity_bits()

Checks the function to produce the bits for the simple parity checking.

test_circuits.test_correct_qubit()

Checks that the data qubit correction helper function is working correctly

test_circuits.test_count_valid_output_strings()

Checks that the helper function to count valid output strings agrees to a preworked example

test_circuits.test_count_valid_output_strings_simple_one()

Check that each logical one codeword is identified as valid with simple software decoding

test_circuits.test_count_valid_output_strings_simple_zero()

Check that each logical zero codeword is identified as valid with simple software decoding

test_circuits.test_count_valid_output_strings_simple_zero_random_codewords()

Check that validity for random codewords with a bit flip in one place is correctly calculated with simple software decoding

test_circuits.test_def_string_ancilla_mask()

Checks that the ancilla mask creation helper function is working correctly

test_circuits.test_error_correction()

Checks that every X error gets corrected by error correction with and without MCT gates

test_circuits.test_error_correction_logical_one()

Checks that every X error gets corrected by error correction with and without MCT gates with logical one

test_circuits.test_flipped_codewords()

Checks that the helper function to bit flip codewords module is working correctly

test_circuits.test_mean()

Checks that the mean of a list is correctly calculated

test_circuits.test_no_error_correction_with_two_logical_qubits()

Checks that an error is thrown when a circuit is set up for extra ancilla for two logical qubits

test_circuits.test_physical_qubit_reference_in_range()

Checks that an error is thrown when indexing a physical qubit outside the valid range

test_circuits.test_process_FT_results_B()

Checks the processing of FT results for scheme B

test_circuits.test_process_FT_results_C()

Checks the processing of FT results for scheme C

test_circuits.test_process_FT_results_C_anc()

Checks the processing of FT results for scheme C with FT ancillas

test_circuits.test_process_FT_results_D()

Checks the processing of FT results for scheme D

test_circuits.test_software_error_correction()

Checks that every X error gets corrected by software

test_circuits.test_standard_error()

Checks that the mean of a list is correctly calculated

test_circuits.test_string_reverse()

Checks that the reverse string helper function is reversing correctly

test_circuits.test_strings_and_bitwise()

Checks that the bitwise function helper function correctly calculates the bitwise AND of two string

test_circuits.test_summarise_logical_counts()

Checks the summarisation of strings on some manufactured data