Compiler Optimization for Automatic Quantum Circuit Synthesis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Manual circuit design in quantum computing is time-consuming and requires significant reimplementation when decisions are changed, and existing methods lack scalability and support for high-level control flow.

Innovation Solution

Automatic circuit synthesis that converts high-level quantum program descriptions with loops and branches into straight-line programs, using compiler optimizations like loop-unrolling and constant-folding to generate dependency graphs and map them to quantum-computing circuits, optimizing resource requirements and cost metrics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If manual circuit design is used, then design flexibility and control are maintained, but time consumption and reimplementation effort increase significantly

Engineering Contradiction:
Improvecircuit design timeVSAvoidcircuit synthesis automation
Core Design Contradiction:
Loss of timeVSExtent of automation

Solution Approach 1:

The system enables self-service by automatically synthesizing quantum circuits from high-level program descriptions without requiring manual intervention. The compiler automatically performs loop unrolling, dependency graph generation, and circuit mapping, allowing the design process to serve itself rather than requiring continuous human input and reimplementation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The invention changes the parameter of automation extent by introducing an automated compilation pipeline that transforms high-level quantum programs into executable circuits. This parameter change resolves the contradiction by shifting from manual design (low automation) to automated synthesis (high automation), thereby reducing design time while maintaining design flexibility through the compiler's optimization capabilities.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If high-level program descriptions with loops and branches are used, then program expressiveness and scalability are improved, but direct circuit mapping becomes impossible without conversion

Engineering Contradiction:
Improveprogram description capabilityVSAvoidcircuit synthesis process
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The invention introduces an intermediary straight-line program representation that mediates between high-level programs with control flow and the target quantum circuit. The compiler converts programs with loops and branches into straight-line form, which can then be systematically transformed into dependency graphs and mapped to circuits. This intermediary representation resolves the contradiction by enabling high-level expressiveness while maintaining circuit synthesizability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system replaces the mechanical process of manual circuit design with an automated compilation mechanism. The compiler systematically transforms high-level programs through intermediate representations to generate circuits, substituting the manual mechanical process with an automated algorithmic process that handles complexity while preserving program semantics.

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

3Productivity

If manual circuit optimization is performed, then specific cost metrics can be optimized, but the process requires complete reimplementation when decisions change

Engineering Contradiction:
Improvecircuit optimization efficiencyVSAvoidcircuit redesign flexibility
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The invention introduces dynamics by making the optimization process adaptable and reversible through the compilation pipeline. When design decisions need to change, users can modify the high-level program description and recompile, and the compiler will automatically regenerate the optimized circuit. This dynamic approach replaces static manual optimization with a flexible automated process that easily accommodates design changes without requiring complete reimplementation.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The compiler performs preliminary optimization actions during the compilation process by applying loop unrolling, dependency analysis, and circuit mapping optimizations automatically. These preliminary actions prepare the circuit for efficient execution while maintaining the ability to reoptimize if design decisions change, thereby improving productivity without sacrificing redesign flexibility.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11829737B2Using compiler optimization to enable automatic generation of combinational circuits from high-level programs
Publication Date: 2023.11.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11829737B2 patent drawing
  • US11829737B2 patent drawing
  • US11829737B2 patent drawing

AI summary

This application concerns quantum computing devices and, more specifically, techniques for compiling a high-level description of a quantum program to be implemented in a quantum-computing device into a lower-level program that is executable by a quantum-computing device, where the high-level description of the quantum program to be implemented in a quantum-computing device supports at least one of loops and/or branches.