Skip to content

Commit 1319f78

Browse files
committed
Make compat with 0.9.0
1 parent ae17245 commit 1319f78

File tree

5 files changed

+15
-41
lines changed

5 files changed

+15
-41
lines changed

Project.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "ITensorNetworks"
22
uuid = "2919e153-833c-4bdc-8836-1ea460a35fc7"
33
authors = ["Matthew Fishman <[email protected]>, Joseph Tindall <[email protected]> and contributors"]
4-
version = "0.12.0"
4+
version = "0.12.1"
55

66
[deps]
77
AbstractTrees = "1520ce14-60c1-5f80-bbc7-55ef81b5835c"
@@ -65,7 +65,7 @@ EinExprs = "0.6.4"
6565
Graphs = "1.8"
6666
GraphsFlows = "0.1.1"
6767
ITensorMPS = "0.3"
68-
ITensors = "0.7, 0.8"
68+
ITensors = "0.7, 0.8, 0.9"
6969
IsApprox = "0.1, 1, 2"
7070
IterTools = "1.4.0"
7171
KrylovKit = "0.6, 0.7, 0.8"

src/apply.jl

Lines changed: 11 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ using ITensors:
2222
replaceinds,
2323
unioninds,
2424
uniqueinds
25-
using ITensors.ContractionSequenceOptimization: optimal_contraction_sequence
2625
using ITensorMPS: siteinds
2726
using KrylovKit: linsolve
2827
using LinearAlgebra: eigen, norm, svd
@@ -407,7 +406,7 @@ function fidelity(
407406
],
408407
envs,
409408
)
410-
term1 = ITensors.contract(term1_tns; sequence=optimal_contraction_sequence(term1_tns))
409+
term1 = ITensors.contract(term1_tns; sequence="automatic")
411410

412411
term2_tns = vcat(
413412
[
@@ -418,9 +417,9 @@ function fidelity(
418417
],
419418
envs,
420419
)
421-
term2 = ITensors.contract(term2_tns; sequence=optimal_contraction_sequence(term2_tns))
420+
term2 = ITensors.contract(term2_tns; sequence="automatic")
422421
term3_tns = vcat([p_prev, q_prev, prime(dag(p_cur)), prime(dag(q_cur)), gate], envs)
423-
term3 = ITensors.contract(term3_tns; sequence=optimal_contraction_sequence(term3_tns))
422+
term3 = ITensors.contract(term3_tns; sequence="automatic")
424423

425424
f = term3[] / sqrt(term1[] * term2[])
426425
return f * conj(f)
@@ -447,37 +446,13 @@ function optimise_p_q(
447446
qs_ind = setdiff(inds(q_cur), collect(Iterators.flatten(inds.(vcat(envs, p_cur)))))
448447
ps_ind = setdiff(inds(p_cur), collect(Iterators.flatten(inds.(vcat(envs, q_cur)))))
449448

450-
opt_b_seq = optimal_contraction_sequence(vcat(ITensor[p, q, o, dag(prime(q_cur))], envs))
451-
opt_b_tilde_seq = optimal_contraction_sequence(
452-
vcat(ITensor[p, q, o, dag(prime(p_cur))], envs)
453-
)
454-
opt_M_seq = optimal_contraction_sequence(
455-
vcat(ITensor[q_cur, replaceinds(prime(dag(q_cur)), prime(qs_ind), qs_ind), p_cur], envs)
456-
)
457-
opt_M_tilde_seq = optimal_contraction_sequence(
458-
vcat(ITensor[p_cur, replaceinds(prime(dag(p_cur)), prime(ps_ind), ps_ind), q_cur], envs)
459-
)
460-
461-
function b(
462-
p::ITensor,
463-
q::ITensor,
464-
o::ITensor,
465-
envs::Vector{ITensor},
466-
r::ITensor;
467-
opt_sequence=nothing,
468-
)
449+
function b(p::ITensor, q::ITensor, o::ITensor, envs::Vector{ITensor}, r::ITensor;)
469450
return noprime(
470-
ITensors.contract(vcat(ITensor[p, q, o, dag(prime(r))], envs); sequence=opt_sequence)
451+
ITensors.contract(vcat(ITensor[p, q, o, dag(prime(r))], envs); sequence="automatic")
471452
)
472453
end
473454

474-
function M_p(
475-
envs::Vector{ITensor},
476-
p_q_tensor::ITensor,
477-
s_ind,
478-
apply_tensor::ITensor;
479-
opt_sequence=nothing,
480-
)
455+
function M_p(envs::Vector{ITensor}, p_q_tensor::ITensor, s_ind, apply_tensor::ITensor;)
481456
return noprime(
482457
ITensors.contract(
483458
vcat(
@@ -488,20 +463,20 @@ function optimise_p_q(
488463
],
489464
envs,
490465
);
491-
sequence=opt_sequence,
466+
sequence="automatic",
492467
),
493468
)
494469
end
495470
for i in 1:nfullupdatesweeps
496-
b_vec = b(p, q, o, envs, q_cur; opt_sequence=opt_b_seq)
497-
M_p_partial = partial(M_p, envs, q_cur, qs_ind; opt_sequence=opt_M_seq)
471+
b_vec = b(p, q, o, envs, q_cur)
472+
M_p_partial = partial(M_p, envs, q_cur, qs_ind)
498473

499474
p_cur, info = linsolve(
500475
M_p_partial, b_vec, p_cur; isposdef=envisposdef, ishermitian=false
501476
)
502477

503-
b_tilde_vec = b(p, q, o, envs, p_cur; opt_sequence=opt_b_tilde_seq)
504-
M_p_tilde_partial = partial(M_p, envs, p_cur, ps_ind; opt_sequence=opt_M_tilde_seq)
478+
b_tilde_vec = b(p, q, o, envs, p_cur)
479+
M_p_tilde_partial = partial(M_p, envs, p_cur, ps_ind)
505480

506481
q_cur, info = linsolve(
507482
M_p_tilde_partial, b_tilde_vec, q_cur; isposdef=envisposdef, ishermitian=false

src/caches/abstractbeliefpropagationcache.jl

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ using NDTensors: NDTensors
1717
abstract type AbstractBeliefPropagationCache end
1818

1919
function default_message_update(contract_list::Vector{ITensor}; normalize=true, kwargs...)
20-
sequence = optimal_contraction_sequence(contract_list)
21-
updated_messages = contract(contract_list; sequence, kwargs...)
20+
updated_messages = contract(contract_list; sequence="automatic", kwargs...)
2221
message_norm = norm(updated_messages)
2322
if normalize && !iszero(message_norm)
2423
updated_messages /= message_norm

test/test_belief_propagation.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ using NamedGraphs.NamedGraphGenerators: named_comb_tree, named_grid
3434
using NamedGraphs.PartitionedGraphs: PartitionVertex, partitionedges
3535
using SplitApplyCombine: group
3636
using StableRNGs: StableRNG
37-
using TensorOperations: TensorOperations
3837
using Test: @test, @testset
3938

4039
@testset "belief_propagation (eltype=$elt)" for elt in (

test/test_gauging.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ using ITensors.NDTensors: vector
1414
using LinearAlgebra: diag
1515
using NamedGraphs.NamedGraphGenerators: named_grid
1616
using StableRNGs: StableRNG
17+
using TensorOperations: TensorOperations
1718
using Test: @test, @testset
1819

1920
@testset "gauging" begin

0 commit comments

Comments
 (0)