microsoft / qsharp

Azure Quantum Development Kit, including the Q# programming language, resource estimator, and Quantum Katas
https://microsoft.github.io/qsharp/
MIT License
425 stars 86 forks source link

Treat dynamic `Pauli` as requiring `HigherLevelConstructs` #1597

Closed swernli closed 4 months ago

swernli commented 4 months ago

This updates the logic for dynamic Pauli variables so that they produce an RCA check error even when integer computations are supported. This is consistent with the fact that they are not supported at codegen, as expected.

github-actions[bot] commented 4 months ago

Benchmark for bfbb670

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | Array append evaluation | **331.3±2.04µs** | 334.5±7.92µs | **+0.97%** | | Array literal evaluation | **170.2±0.95µs** | 187.1±13.73µs | **+9.93%** | | Array update evaluation | **407.9±1.61µs** | 412.5±3.04µs | **+1.13%** | | Core + Standard library compilation | **20.2±0.98ms** | 21.5±1.24ms | **+6.44%** | | Deutsch-Jozsa evaluation | 5.1±0.05ms | 5.1±0.06ms | 0.00% | | Large file parity evaluation | **34.2±0.09ms** | 34.3±0.35ms | **+0.29%** | | Large input file compilation | **14.4±1.08ms** | 15.4±0.81ms | **+6.94%** | | Large input file compilation (interpreter) | 52.8±2.71ms | 53.9±2.32ms | +2.08% | | Large nested iteration | **32.6±0.56ms** | 33.0±0.23ms | **+1.23%** | | Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1583.0±103.87µs | 1654.9±160.09µs | +4.54% | | Perform Runtime Capabilities Analysis (RCA) on large file sample | **7.8±0.20ms** | 8.7±0.22ms | **+11.54%** | | Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1436.6±73.03µs | 1507.6±265.32µs | +4.94% | | Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 29.0±1.27ms | 29.7±0.92ms | +2.41% | | Teleport evaluation | 90.0±3.98µs | 89.1±4.32µs | -1.00% |