Skip to content

Commit

Permalink
Moved formerly unstable to Std library (#2022)
Browse files Browse the repository at this point in the history
We had Arithmetic, Arithmetic Utils (internal), Table Lookup and State
Preparation in the unstable library. Now they are moved to the Std
library.

Taking Arithmetic as an example, we now place Q# code in the
Std.Arithmetic and re-export it in Microsoft.Quantum.Unstable.Arithmetic
for compatibility. Separate _unstable_ library is removed.

We probably should look at using AND gate in subsequent PR.

Co-authored-by: Dmitry Vasilevsky <[email protected]>
  • Loading branch information
DmitryVasilevsky and Dmitry Vasilevsky authored Nov 15, 2024
1 parent 91f754e commit d2c3d80
Show file tree
Hide file tree
Showing 12 changed files with 20 additions and 1,978 deletions.
18 changes: 9 additions & 9 deletions library/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -74,23 +74,23 @@ pub const STD_LIB: &[(&str, &str)] = &[
include_str!("../std/src/Std/ResourceEstimation.qs"),
),
(
"qsharp-library-source:unstable_arithmetic_internal.qs",
include_str!("../std/src/unstable_arithmetic_internal.qs"),
"qsharp-library-source:Std/Arithmetic.qs",
include_str!("../std/src/Std/Arithmetic.qs"),
),
(
"qsharp-library-source:unstable_arithmetic.qs",
include_str!("../std/src/unstable_arithmetic.qs"),
"qsharp-library-source:Std/ArithmeticUtils.qs",
include_str!("../std/src/Std/ArithmeticUtils.qs"),
),
(
"qsharp-library-source:unstable_state_preparation.qs",
include_str!("../std/src/unstable_state_preparation.qs"),
"qsharp-library-source:Std/StatePreparation.qs",
include_str!("../std/src/Std/StatePreparation.qs"),
),
(
"qsharp-library-source:unstable_table_lookup.qs",
include_str!("../std/src/unstable_table_lookup.qs"),
"qsharp-library-source:Std/TableLookup.qs",
include_str!("../std/src/Std/TableLookup.qs"),
),
(
"qsharp-library-source:legacy_api.qs",
"qsharp-library-source:Std/legacy_api.qs",
include_str!("../std/src/legacy_api.qs"),
),
];
10 changes: 5 additions & 5 deletions library/std/qsharp.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,6 @@
"license": "MIT",
"files": [
"src/legacy_api.qs",
"src/unstable_arithmetic.qs",
"src/unstable_arithmetic_internal.qs",
"src/unstable_state_preparation.qs",
"src/unstable_table_lookup.qs",
"src/QIR/Intrinsic.qs",
"src/Std/Arrays.qs",
"src/Std/Canon.qs",
Expand All @@ -19,6 +15,10 @@
"src/Std/Measurement.qs",
"src/Std/Random.qs",
"src/Std/Range.qs",
"src/Std/ResourceEstimation.qs"
"src/Std/ResourceEstimation.qs",
"src/Std/Arithmetic.qs",
"src/Std/ArithmeticUtils.qs",
"src/Std/StatePreparation.qs",
"src/Std/TableLookup.qs"
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// Licensed under the MIT License.

import
ArithmeticUtils.*,
Std.ArithmeticUtils.*,
Std.Arrays.Most,
Std.Arrays.Tail,
Std.Arrays.Head,
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import
Std.Arrays.*,
Std.ResourceEstimation.BeginEstimateCaching,
Std.ResourceEstimation.EndEstimateCaching,
ArithmeticUtils.ApplyAndAssuming0Target;
Std.ArithmeticUtils.ApplyAndAssuming0Target;

/// # Summary
/// Performs table lookup using a SELECT network
Expand Down
4 changes: 4 additions & 0 deletions library/std/src/legacy_api.qs
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,7 @@ namespace Microsoft.Quantum.Core {
import Std.Range.*;
export RangeStart, RangeEnd, IsRangeEmpty, Length, Repeated, Int, Qubit, Bool, Unit;
}

namespace Microsoft.Quantum.Unstable {
export Std.Arithmetic, Std.StatePreparation, Std.TableLookup;
}
Loading

0 comments on commit d2c3d80

Please sign in to comment.