From 6ac5eac94beacc61d64ead137b2415d35973e433 Mon Sep 17 00:00:00 2001 From: Rafael Mohr Date: Wed, 8 Nov 2023 17:49:14 +0100 Subject: [PATCH] fixes a pivot bug --- src/siggb/linear_algebra.jl | 7 +++++-- src/siggb/update.jl | 1 - 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/siggb/linear_algebra.jl b/src/siggb/linear_algebra.jl index c02512c..1178901 100644 --- a/src/siggb/linear_algebra.jl +++ b/src/siggb/linear_algebra.jl @@ -19,7 +19,7 @@ function echelonize!(matrix::MacaulayMatrix, hash2col[col2hash[i]] = MonIdx(i) end - @inbounds for i in 2:matrix.nrows + @inbounds for i in 1:matrix.nrows row_ind = matrix.sig_order[i] row_cols = matrix.rows[row_ind] @@ -34,7 +34,10 @@ function echelonize!(matrix::MacaulayMatrix, does_red = !iszero(pividx) && rev_sigorder[pividx] < i does_red && break end - !does_red && continue + if !does_red + pivots[l_col_idx] = row_ind + continue + end # buffer the row row_coeffs = matrix.coeffs[row_ind] diff --git a/src/siggb/update.jl b/src/siggb/update.jl index c61983f..bdb3428 100644 --- a/src/siggb/update.jl +++ b/src/siggb/update.jl @@ -76,7 +76,6 @@ function update_basis!(basis::Basis, insert_in_basis_hash_table_pivots!(row, basis_ht, symbol_ht) lm = basis_ht.exponents[first(row)] s = new_sig - # println("new $s, $(lm.exps)") # add everything to basis l = basis.basis_load + 1