Algorithms.BWT.Alternative

Oracle abstraction

data Oracle

convert_oracle

Top-level algorithm

qrwbwt

hamiltonian

time_step

basischange

compute_steps

Oracle implementations

Blackbox oracle

oracle_blackbox

A simple "exponential" oracle.

oracle_simple

Alternate implementations of the "orthodox" oracle

Classical implementation

type Node

node_of_int

int_of_node

node_of_boollist

boollist_of_node

parent

childintree

bit_adder

doweld1

doweld0

weld

child

level_parity

is_zero

is_root

v_function

Auxiliary functions

type CNode

type QNode

qnode_of_qulist

cnode_of_bitlist

cboollist_xor

Classical circuit implementation

cparent

cchildintree

cbit_adder

cdoweld1

cdoweld0

cweld

cchild

clevel_parity

cis_zero

cis_root

cv_function

Oracle abstraction

oracle_classical

Testing functions

main_edges1

circfun

main_edges2

main_oraclec

main_oracle2

main_oracle3

main_qrwbwt