UserDemo module

This module serves as a demonstration for the multiple tasks our implementation constists of. It includes Benchmarks between using SparseMatrices, LazyMatrices and numpy arrays. It allows the user through prompts to navigate through our programs.

UserDemo.BorD_prompt()

A function to prompt for benchmark or demonstration.

UserDemo.actual_builder(algorithm)

Function which builds the circuit as prompted by the user.

UserDemo.builder_prompt()

A function to prompt for circuit-builder or pre-built circuits.

UserDemo.circuit_prompt()

A function to prompt for specific pre-built circuits.

UserDemo.compareProbabilities()

Compares the two implementations to make sure that they give the same states for Grover’s algorithm search.

UserDemo.custom_builder_prompt()

Function to determine which circuit to build for the user.

UserDemo.tensorTest()

Checks the runtime of computing the Tensorproduct in three different ways. First using our own Lazy Matrix Implementation, second using Numpy Tensor Product of Gates and third using Numpy Tensor Product of individual qubits.

UserDemo.timeBenchmarks()

Runs Benchmarks for Grover’s algorithm for both the Circuit-Builder implementation and the Pre-defined Circuit implementation. It also plots a graph for comparison.