ReVer Compiler Formal Verification Reversible Circuits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing reversible circuit compilers for quantum computing lack formal verification, leading to potential errors in implementing reversible circuits, such as incorrect results and unclean ancilla bits, which can cause entanglement and computation failure.

Innovation Solution

The development of the ReVer compiler, which uses formal proofs and verification tools to ensure that generated reversible circuits are correct and clean ancilla bits, employing techniques like Bennett's compute-copy-uncompute strategy and space-efficient methods, and utilizing a type inference algorithm to verify the correctness of the compilation process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If formal verification is applied to reversible circuit compilation, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improvecorrectness of reversible circuit implementationVSAvoidcomplexity of verification system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The verification process is segmented into distinct components: type checking for structural correctness, semantic verification for functional correctness, and ancilla cleanup verification for state correctness. This segmentation allows each verification aspect to be handled independently, managing overall complexity while ensuring comprehensive reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Formal verification is performed preliminarily during the compilation process itself, rather than as a separate post-processing step. The type inference algorithm and verification rules are integrated into the compiler architecture, allowing correctness to be established before the reversible circuit is executed, thus improving reliability without requiring additional external verification infrastructure.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If ancilla bits are not returned to initial state, then productivity is improved, but harmful factors increase

Engineering Contradiction:
Improvecomputation speedVSAvoidentanglement and computation failure
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The verification system implements feedback by checking whether ancilla bits are properly returned to their initial state through type checking and semantic verification. This feedback mechanism ensures that any failure to clean ancilla bits is detected, preventing entanglement and computation failure while allowing optimized computation paths to proceed at high speed.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent replaces manual or ad-hoc ancilla management with an automated type inference algorithm that systematically tracks and verifies ancilla bit states. This substitution of mechanical verification with algorithmic verification ensures consistent and reliable ancilla cleanup without sacrificing computational productivity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10664249B2Verified compilation of reversible circuits
Publication Date: 2020.05.26 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10664249B2 patent drawing
  • US10664249B2 patent drawing
  • US10664249B2 patent drawing

AI summary

The generation of reversible circuits from high-level code is desirable in a variety of application domains, including low-power electronics and quantum computing. However, little effort has been spent on verifying the correctness of the results, an issue of particular importance in quantum computing where such circuits are run on all inputs simultaneously. Disclosed herein are example reversible circuit compilers as well as tools and techniques for verifying the compilers. Example compilers disclosed herein compile a high-level language into combinational reversible circuits having a reduced number of ancillary bits (ancilla bits) and further having provably clean temporary values.