From 2938e27df9f78a24bd36d72d2c8ab56886c74676 Mon Sep 17 00:00:00 2001 From: Akira Kyle Date: Tue, 12 Nov 2024 13:13:49 -0700 Subject: [PATCH 1/4] Bump compat for Symbolics to 6 and fix maketerm arguments --- Project.toml | 2 +- src/QSymbolicsBase/QSymbolicsBase.jl | 2 +- src/QSymbolicsBase/basic_ops_inhomogeneous.jl | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Project.toml b/Project.toml index fd0be53..0b09c39 100644 --- a/Project.toml +++ b/Project.toml @@ -31,6 +31,6 @@ QuantumClifford = "0.8.19, 0.9" QuantumInterface = "0.3.3" QuantumOpticsBase = "0.4.22, 0.5" SymbolicUtils = "2.0.2, 3" -Symbolics = "5.30.3" +Symbolics = "5.30.3, 6" TermInterface = "0.4, 0.5, 1, 2" julia = "1.10" diff --git a/src/QSymbolicsBase/QSymbolicsBase.jl b/src/QSymbolicsBase/QSymbolicsBase.jl index d707c49..955a40d 100644 --- a/src/QSymbolicsBase/QSymbolicsBase.jl +++ b/src/QSymbolicsBase/QSymbolicsBase.jl @@ -99,7 +99,7 @@ Base.:(-)(x::SymQObj) = (-1)*x Base.:(-)(x::SymQObj,y::SymQObj) = x + (-y) Base.hash(x::SymQObj, h::UInt) = isexpr(x) ? hash((head(x), arguments(x)), h) : hash((typeof(x),symbollabel(x),basis(x)), h) -maketerm(::Type{<:SymQObj}, f, a, t, m) = f(a...) +maketerm(::Type{<:SymQObj}, f, a, m) = f(a...) function Base.isequal(x::X,y::Y) where {X<:SymQObj, Y<:SymQObj} if X==Y diff --git a/src/QSymbolicsBase/basic_ops_inhomogeneous.jl b/src/QSymbolicsBase/basic_ops_inhomogeneous.jl index 7cc77f9..4b5989d 100644 --- a/src/QSymbolicsBase/basic_ops_inhomogeneous.jl +++ b/src/QSymbolicsBase/basic_ops_inhomogeneous.jl @@ -100,7 +100,7 @@ Base.:(*)(b::Symbolic{AbstractBra}, k::SZeroKet) = 0 Base.:(*)(b::SZeroBra, k::SZeroKet) = 0 Base.show(io::IO, x::SBraKet) = begin print(io,x.bra); print(io,x.ket) end Base.hash(x::SBraKet, h::UInt) = hash((head(x), arguments(x)), h) -maketerm(::Type{SBraKet}, f, a, t, m) = f(a...) +maketerm(::Type{SBraKet}, f, a, m) = f(a...) Base.isequal(x::SBraKet, y::SBraKet) = isequal(x.bra, y.bra) && isequal(x.ket, y.ket) """Symbolic outer product of a ket and a bra. From b1dae978ca3d48f089fcf09f0e31c1d4a93cef72 Mon Sep 17 00:00:00 2001 From: Stefan Krastanov Date: Thu, 14 Nov 2024 15:35:24 -0500 Subject: [PATCH 2/4] try just v6 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 0b09c39..07b83a4 100644 --- a/Project.toml +++ b/Project.toml @@ -31,6 +31,6 @@ QuantumClifford = "0.8.19, 0.9" QuantumInterface = "0.3.3" QuantumOpticsBase = "0.4.22, 0.5" SymbolicUtils = "2.0.2, 3" -Symbolics = "5.30.3, 6" +Symbolics = "6" TermInterface = "0.4, 0.5, 1, 2" julia = "1.10" From a610dd4d995d15ebfa1d1f256990947885e2bbdb Mon Sep 17 00:00:00 2001 From: Stefan Krastanov Date: Thu, 14 Nov 2024 15:40:26 -0500 Subject: [PATCH 3/4] further compat restrictions --- Project.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Project.toml b/Project.toml index 07b83a4..f4e4caf 100644 --- a/Project.toml +++ b/Project.toml @@ -30,7 +30,7 @@ PrecompileTools = "1.2" QuantumClifford = "0.8.19, 0.9" QuantumInterface = "0.3.3" QuantumOpticsBase = "0.4.22, 0.5" -SymbolicUtils = "2.0.2, 3" +SymbolicUtils = "3.7" Symbolics = "6" -TermInterface = "0.4, 0.5, 1, 2" +TermInterface = "2" julia = "1.10" From 6b305a5044b9c8ed3f01d425a82d8021370d435c Mon Sep 17 00:00:00 2001 From: Stefan Krastanov Date: Thu, 14 Nov 2024 15:57:30 -0500 Subject: [PATCH 4/4] changelog and version bump --- CHANGELOG.md | 14 +++++++++----- Project.toml | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a0accc1..0f5b30c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # News +## v0.4.5 - 2024-11-14 + +- Updated compat lower bounds for Symbolics to v6 (and for SymbolicUtils and TermInterface) + ## v0.4.4 - 2024-09-16 - Implement squeezing with `SqueezeOp` and `SqueezedState`. @@ -23,14 +27,14 @@ - Added phase-shift and displacement operators `DisplaceOp` and `PhaseShiftOp`. - Simplification rules for Fock objects. - **(breaking)** `FockBasisState` was renamed to `FockState`. - + ## v0.3.4 - 2024-07-22 - Added `tr` and `ptrace` functionalities. - New symbolic superoperator representations. - Added linear algebra operations `exp`, `vec`, `conj`, `transpose`. - Created a getting-started guide in docs. - + ## v0.3.3 - 2024-07-12 - Added single qubit simplification rules. @@ -51,7 +55,7 @@ - Implement zero objects. - Equality for commutative operations, hashing, and lexicographic ordering when printing. - Added tests. - + ## v0.3.0 - 2024-06-12 - Bump compat for symbolics-related foundational packages. @@ -78,12 +82,12 @@ - Add all conditional Paulis. - Remove `stab_to_ket` in favor of directly using the `Ket` constructor. -## v0.2.2 - 2023-06-28 +## v0.2.2 - 2023-06-28 - Bump `QuantumInterface` compat. - Upstream some `apply!` definitions to QuantumOpticsBase. -## v0.2.1 - 2023-06-11 +## v0.2.1 - 2023-06-11 - Bump `QuantumInterface` compat. diff --git a/Project.toml b/Project.toml index f4e4caf..2398b56 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "QuantumSymbolics" uuid = "efa7fd63-0460-4890-beb7-be1bbdfbaeae" authors = ["QuantumSymbolics.jl contributors"] -version = "0.4.4" +version = "0.4.5" [deps] Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316"