Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
d2cbe36293 |
41
check_SAutF5.jl
Normal file
41
check_SAutF5.jl
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
using Pkg
|
||||||
|
Pkg.activate(".")
|
||||||
|
using Groups
|
||||||
|
using GroupRings
|
||||||
|
using PropertyT
|
||||||
|
using SparseArrays
|
||||||
|
using LinearAlgebra
|
||||||
|
using IntervalArithmetic
|
||||||
|
using JLD
|
||||||
|
|
||||||
|
@show Threads.nthreads()
|
||||||
|
BLAS.set_num_threads(Threads.nthreads());
|
||||||
|
|
||||||
|
G = SAut(FreeGroup(5))
|
||||||
|
pm = load("oSAutF5_r2/pm.jld", "pm");
|
||||||
|
RG = GroupRing(G, pm)
|
||||||
|
@info RG
|
||||||
|
|
||||||
|
S_size = 80
|
||||||
|
Δ_coeff = SparseVector(maximum(pm), collect(1:(1+S_size)), [S_size; -ones(S_size)])
|
||||||
|
Δ = GroupRingElem(Δ_coeff, RG);
|
||||||
|
Δ² = Δ^2;
|
||||||
|
|
||||||
|
@info "Loading solution"
|
||||||
|
λ₀ = load("oSAutF5_r2/1.3/lambda.jld", "λ")
|
||||||
|
P₀ = load("oSAutF5_r2/1.3/SDPmatrix.jld", "P");
|
||||||
|
|
||||||
|
@info "Taking square root of P"
|
||||||
|
@time Q = real(sqrt(P₀));
|
||||||
|
|
||||||
|
Q_aug, check_columns_augmentation = PropertyT.augIdproj(Interval, Q);
|
||||||
|
@show check_columns_augmentation
|
||||||
|
if !check_columns_augmentation
|
||||||
|
@warn "Columns of Q are not guaranteed to represent elements of the augmentation ideal!"
|
||||||
|
end
|
||||||
|
|
||||||
|
@info "Computing SOS decomposition"
|
||||||
|
@time sos = PropertyT.compute_SOS(RG, Q_aug);
|
||||||
|
|
||||||
|
residual = Δ² - @interval(λ₀)*Δ - sos;
|
||||||
|
@show norm(residual, 1)
|
Loading…
Reference in New Issue
Block a user