Quantum and CircuitsReading edition

Examples: 11 declarations

Reading tools
Reading libraryFind statementsInspect Lean
Switch work

Saved reading

Read side by side

Verification statements describe the retained edition and its recorded evidence. This HTML presentation adds no Lean execution or proof review.

Start reading

Resources & source

Original TeX with line links · Download TeX

The wording and mathematics follow the retained manuscript. This reading format does not add a proof review or extend Lean coverage.

Skip contents and start reading

Examples: 11 declarations

L030 andOracle_restores

Source. CircuitObstructions/Examples.lean:27
Block. 01 Axioms. Quot.sound

CircuitObstructions.Examples.andOracle_restores :
  CircuitObstructions.Restores CircuitObstructions.Examples.andBoundary CircuitObstructions.Examples.andOracle fun x =>
    x.fst && x.snd

L031 andOracle_toffoli_count

Source. CircuitObstructions/Examples.lean:33
Block. 01 Axioms. propext

CircuitObstructions.Examples.andOracle_toffoli_count :
  CircuitObstructions.toffoliCount CircuitObstructions.Examples.andOracle = 2
L032 and_scratch_can_be_dirty

Source. CircuitObstructions/Examples.lean:36
Block. 01 Axioms. none

CircuitObstructions.Examples.and_scratch_can_be_dirty :
  CircuitObstructions.run CircuitObstructions.Examples.andCompute
      (CircuitObstructions.Examples.andBoundary.encode (true, true) false)
      CircuitObstructions.Examples.WorkWire.scratch =
    true
L033 andOracle_every_cut

Source. CircuitObstructions/Examples.lean:40
Block. 01 Axioms. propext, Classical.choice, Quot.sound

CircuitObstructions.Examples.andOracle_every_cut (k : Nat) (x : Bool × Bool) :
  (x.fst && x.snd) = true ↔
    ∃ i,
      CircuitObstructions.packet CircuitObstructions.Examples.andBoundary
          (List.take k CircuitObstructions.Examples.andOracle) (List.drop k CircuitObstructions.Examples.andOracle) x
          i =
        true
L034 outputActiveOracle_restores

Source. CircuitObstructions/Examples.lean:66
Block. 01 Axioms. Quot.sound

CircuitObstructions.Examples.outputActiveOracle_restores :
  CircuitObstructions.Restores CircuitObstructions.Examples.swapBoundary CircuitObstructions.Examples.outputActiveOracle
    fun x => true
L035 outputActiveOracle_length

Source. CircuitObstructions/Examples.lean:71
Block. 01 Axioms. none

CircuitObstructions.Examples.outputActiveOracle_length : List.length CircuitObstructions.Examples.outputActiveOracle = 7
L036 outputActiveOracle_toffoli_count

Source. CircuitObstructions/Examples.lean:73
Block. 01 Axioms. propext

CircuitObstructions.Examples.outputActiveOracle_toffoli_count :
  CircuitObstructions.toffoliCount CircuitObstructions.Examples.outputActiveOracle = 0
L037 moved_discrepancy_data

Source. CircuitObstructions/Examples.lean:76
Block. 01 Axioms. none

CircuitObstructions.Examples.moved_discrepancy_data (x : Bool) :
  CircuitObstructions.packet CircuitObstructions.Examples.swapBoundary CircuitObstructions.Examples.swapCircuit
      CircuitObstructions.Examples.swapSuffix x CircuitObstructions.Examples.SwapWire.data =
    true
L038 moved_discrepancy_target

Source. CircuitObstructions/Examples.lean:80
Block. 01 Axioms. none

CircuitObstructions.Examples.moved_discrepancy_target (x : Bool) :
  CircuitObstructions.packet CircuitObstructions.Examples.swapBoundary CircuitObstructions.Examples.swapCircuit
      CircuitObstructions.Examples.swapSuffix x CircuitObstructions.Examples.SwapWire.target =
    false
L039 target_only_reconstruction_is_false

Source. CircuitObstructions/Examples.lean:85
Block. 01 Axioms. none

CircuitObstructions.Examples.target_only_reconstruction_is_false :
  ¬∀ (x : Bool),
      CircuitObstructions.packet CircuitObstructions.Examples.swapBoundary CircuitObstructions.Examples.swapCircuit
          CircuitObstructions.Examples.swapSuffix x CircuitObstructions.Examples.SwapWire.target =
        true
L040 degenerate_encoding_control

Source. CircuitObstructions/Examples.lean:93
Block. 01 Axioms. none

CircuitObstructions.Examples.degenerate_encoding_control :
  have bad := fun x x_1 => false;
  (∀ (y : Bool), CircuitObstructions.run [] (bad y) = bad (y ^^ true)) ∧
    ∀ (i : CircuitObstructions.Examples.SwapWire), (bad false i ^^ bad false i) = false
Source and conversion record

Source SHA-256: 36eb83548efd74b42264ab400e359c2de20c701b436b132b8b2859312d2dcdba

Unsupported prose commands stop the build. The mathematical expression sequence is checked against the source, with manuscript macros expanded for display.

Conversion records

Notation in Quantum and Circuits

Look up a symbol without leaving this chapter. Select text before opening help to search for it.

Search this work’s notation.

    Symbols can have different meanings in different passages. Read each result in its own context.

    Open the full notation index