diff --git a/CMakeLists.txt b/CMakeLists.txt index 059a144f..239d145b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,7 @@ project(PSLP LANGUAGES C CXX) # The library is written in C, but we also have so set(PSLP_VERSION_MAJOR 0) set(PSLP_VERSION_MINOR 0) -set(PSLP_VERSION_PATCH 6) +set(PSLP_VERSION_PATCH 7) set(PSLP_VERSION "${PSLP_VERSION_MAJOR}.${PSLP_VERSION_MINOR}.${PSLP_VERSION_PATCH}") add_compile_definitions(PSLP_VERSION="${PSLP_VERSION}") diff --git a/LICENSE b/LICENSE index fecabe13..0c38718c 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2025 Daniel Cederberg + Copyright 2025-2026 Daniel Cederberg Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/include/PSLP/PSLP_API.h b/include/PSLP/PSLP_API.h index 7afeead6..6db92085 100644 --- a/include/PSLP/PSLP_API.h +++ b/include/PSLP/PSLP_API.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/PSLP/PSLP_sol.h b/include/PSLP/PSLP_sol.h index e3c7c470..16a50aba 100644 --- a/include/PSLP/PSLP_sol.h +++ b/include/PSLP/PSLP_sol.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/PSLP/PSLP_stats.h b/include/PSLP/PSLP_stats.h index aad2da00..70e0ae07 100644 --- a/include/PSLP/PSLP_stats.h +++ b/include/PSLP/PSLP_stats.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Activity.h b/include/core/Activity.h index 64728ead..833551a5 100644 --- a/include/core/Activity.h +++ b/include/core/Activity.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Bounds.h b/include/core/Bounds.h index f2bbbf36..a1005187 100644 --- a/include/core/Bounds.h +++ b/include/core/Bounds.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Constraints.h b/include/core/Constraints.h index 2c523447..639ee644 100644 --- a/include/core/Constraints.h +++ b/include/core/Constraints.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/CoreTransformations.h b/include/core/CoreTransformations.h index 3904c4c8..b5974111 100644 --- a/include/core/CoreTransformations.h +++ b/include/core/CoreTransformations.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Debugger.h b/include/core/Debugger.h index a2bcd3ce..f532d728 100644 --- a/include/core/Debugger.h +++ b/include/core/Debugger.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Locks.h b/include/core/Locks.h index 7ea9ab23..f286d536 100644 --- a/include/core/Locks.h +++ b/include/core/Locks.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Matrix.h b/include/core/Matrix.h index 313a923c..7549a8cc 100644 --- a/include/core/Matrix.h +++ b/include/core/Matrix.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Numerics.h b/include/core/Numerics.h index 215fcce0..eb1945ad 100644 --- a/include/core/Numerics.h +++ b/include/core/Numerics.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Postsolver.h b/include/core/Postsolver.h index f7abdcae..3663f8e4 100644 --- a/include/core/Postsolver.h +++ b/include/core/Postsolver.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Problem.h b/include/core/Problem.h index ccc027e0..1ca8e04c 100644 --- a/include/core/Problem.h +++ b/include/core/Problem.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/RowColViews.h b/include/core/RowColViews.h index 44657555..a753bc18 100644 --- a/include/core/RowColViews.h +++ b/include/core/RowColViews.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/State.h b/include/core/State.h index eb05b39f..f1fa6790 100644 --- a/include/core/State.h +++ b/include/core/State.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Tags.h b/include/core/Tags.h index 82fa89ab..c75bbd04 100644 --- a/include/core/Tags.h +++ b/include/core/Tags.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/Workspace.h b/include/core/Workspace.h index 6ac73bdc..278ac1ed 100644 --- a/include/core/Workspace.h +++ b/include/core/Workspace.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/debug_macros.h b/include/core/debug_macros.h index 6e5fb09c..94afb741 100644 --- a/include/core/debug_macros.h +++ b/include/core/debug_macros.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/glbopts.h b/include/core/glbopts.h index 182fa440..da5d6d20 100644 --- a/include/core/glbopts.h +++ b/include/core/glbopts.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/radix_sort.h b/include/core/radix_sort.h index f4d154ca..8f1e31a4 100644 --- a/include/core/radix_sort.h +++ b/include/core/radix_sort.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/core/utils.h b/include/core/utils.h index 26208da9..116e5049 100644 --- a/include/core/utils.h +++ b/include/core/utils.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/data_structures/Binary_search.h b/include/data_structures/Binary_search.h index 964fd02d..612028ca 100644 --- a/include/data_structures/Binary_search.h +++ b/include/data_structures/Binary_search.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/data_structures/Memory_wrapper.h b/include/data_structures/Memory_wrapper.h index d6bc0a1c..86a1d0b7 100644 --- a/include/data_structures/Memory_wrapper.h +++ b/include/data_structures/Memory_wrapper.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/data_structures/Vec_macros.h b/include/data_structures/Vec_macros.h index f71b6ed1..5bc3cf0b 100644 --- a/include/data_structures/Vec_macros.h +++ b/include/data_structures/Vec_macros.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/data_structures/dVec.h b/include/data_structures/dVec.h index 22cd9bc6..2c3ded4f 100644 --- a/include/data_structures/dVec.h +++ b/include/data_structures/dVec.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/data_structures/iVec.h b/include/data_structures/iVec.h index 1760090d..33669ee1 100644 --- a/include/data_structures/iVec.h +++ b/include/data_structures/iVec.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/data_structures/u16Vec.h b/include/data_structures/u16Vec.h index bc5b1461..c42ea9f5 100644 --- a/include/data_structures/u16Vec.h +++ b/include/data_structures/u16Vec.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/DTonsEq.h b/include/explorers/DTonsEq.h index 77ddf1af..5675a3cc 100644 --- a/include/explorers/DTonsEq.h +++ b/include/explorers/DTonsEq.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/Parallel_cols.h b/include/explorers/Parallel_cols.h index 220c1503..ca435d39 100644 --- a/include/explorers/Parallel_cols.h +++ b/include/explorers/Parallel_cols.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/Parallel_rows.h b/include/explorers/Parallel_rows.h index f31ea891..93df00d1 100644 --- a/include/explorers/Parallel_rows.h +++ b/include/explorers/Parallel_rows.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/Primal_propagation.h b/include/explorers/Primal_propagation.h index a11e49ed..9dadbc14 100644 --- a/include/explorers/Primal_propagation.h +++ b/include/explorers/Primal_propagation.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/SimpleReductions.h b/include/explorers/SimpleReductions.h index 3d7d8d76..ac9125e2 100644 --- a/include/explorers/SimpleReductions.h +++ b/include/explorers/SimpleReductions.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/Simple_dual_fix.h b/include/explorers/Simple_dual_fix.h index 6493a367..e43ecc1f 100644 --- a/include/explorers/Simple_dual_fix.h +++ b/include/explorers/Simple_dual_fix.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/StonCols.h b/include/explorers/StonCols.h index c57de077..a2181da0 100644 --- a/include/explorers/StonCols.h +++ b/include/explorers/StonCols.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/include/explorers/Timer.h b/include/explorers/Timer.h index 91681593..dce9a1a2 100644 --- a/include/explorers/Timer.h +++ b/include/explorers/Timer.h @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Activity.c b/src/core/Activity.c index 2d6fd2b2..1c23a3a4 100644 --- a/src/core/Activity.c +++ b/src/core/Activity.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Constraints.c b/src/core/Constraints.c index 843700fb..e63e1c34 100644 --- a/src/core/Constraints.c +++ b/src/core/Constraints.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/CoreTransformation.c b/src/core/CoreTransformation.c index 8129a2dd..bde9e7d7 100644 --- a/src/core/CoreTransformation.c +++ b/src/core/CoreTransformation.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Debugger.c b/src/core/Debugger.c index 2c89f5f6..95f61677 100644 --- a/src/core/Debugger.c +++ b/src/core/Debugger.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Locks.c b/src/core/Locks.c index 8019d2a7..f052040f 100644 --- a/src/core/Locks.c +++ b/src/core/Locks.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Matrix.c b/src/core/Matrix.c index 35d52bbf..d2e5f613 100644 --- a/src/core/Matrix.c +++ b/src/core/Matrix.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * @@ -27,6 +27,9 @@ #include "stdlib.h" #include "string.h" +/* forward declaration */ +static inline void remove_explicit_zeros(Matrix *A); + Matrix *matrix_new(const double *Ax, const int *Ai, const int *Ap, size_t n_rows, size_t n_cols, size_t nnz) { @@ -114,9 +117,35 @@ Matrix *matrix_new_no_extra_space(const double *Ax, const int *Ai, const int *Ap A->p[i].end = Ap[i + 1]; } + /* the presolver assumes that only nonzero entries are stored */ + remove_explicit_zeros(A); + return A; } +static inline void remove_explicit_zeros(Matrix *A) +{ + int i, j, shift; + for (i = 0; i < A->m; ++i) + { + shift = 0; + for (j = A->p[i].start; j < A->p[i].end; ++j) + { + if (A->x[j] == 0.0) + { + shift++; + } + else if (shift > 0) + { + A->x[j - shift] = A->x[j]; + A->i[j - shift] = A->i[j]; + } + } + A->p[i].end -= shift; + A->nnz -= (size_t) shift; + } +} + Matrix *transpose(const Matrix *A, int *work_n_cols) { Matrix *AT = matrix_alloc(A->n, A->m, A->nnz); @@ -433,7 +462,6 @@ double insert_or_update_coeff(Matrix *A, int row, int col, double val, int *row_ // ----------------------------------------------------------------- if (ABS(val) > ZERO_TOL) { - // assert(!IS_ZERO_FEAS_TOL(val)); if (insertion == end) { A->x[insertion] = val; diff --git a/src/core/Postsolver.c b/src/core/Postsolver.c index 6e4bc03e..a3c77200 100644 --- a/src/core/Postsolver.c +++ b/src/core/Postsolver.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Presolver.c b/src/core/Presolver.c index 4cbfd7d6..b3ff78a3 100644 --- a/src/core/Presolver.c +++ b/src/core/Presolver.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * @@ -305,6 +305,7 @@ Presolver *new_presolver(const double *Ax, const int *Ai, const int *Ap, size_t presolver->stgs = stgs; presolver->prob = new_problem(constraints, obj); presolver->stats = init_stats(A->m, A->n, nnz); + presolver->stats->nnz_removed_trivial = nnz - (size_t) A->nnz; /* explicit 0's */ presolver->reduced_prob = (PresolvedProblem *) ps_calloc(1, sizeof(PresolvedProblem)); DEBUG(run_debugger(constraints, false)); diff --git a/src/core/Problem.c b/src/core/Problem.c index f9e792ce..e25e1e9e 100644 --- a/src/core/Problem.c +++ b/src/core/Problem.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/State.c b/src/core/State.c index 408cca5d..ee8c64e7 100644 --- a/src/core/State.c +++ b/src/core/State.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Tags.c b/src/core/Tags.c index e1b0af9f..9f0a373a 100644 --- a/src/core/Tags.c +++ b/src/core/Tags.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/Workspace.c b/src/core/Workspace.c index 3156a715..107dcfdc 100644 --- a/src/core/Workspace.c +++ b/src/core/Workspace.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/radix_sort.c b/src/core/radix_sort.c index ee81e4bb..fc43c2c2 100644 --- a/src/core/radix_sort.c +++ b/src/core/radix_sort.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/core/utils.c b/src/core/utils.c index 7fab3cec..f6dc99ff 100644 --- a/src/core/utils.c +++ b/src/core/utils.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/DtonsEq.c b/src/explorers/DtonsEq.c index adbe8292..029f9142 100644 --- a/src/explorers/DtonsEq.c +++ b/src/explorers/DtonsEq.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/Parallel_cols.c b/src/explorers/Parallel_cols.c index b8191e16..d3195123 100644 --- a/src/explorers/Parallel_cols.c +++ b/src/explorers/Parallel_cols.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/Parallel_rows.c b/src/explorers/Parallel_rows.c index 7de5ffc7..aed1bd67 100644 --- a/src/explorers/Parallel_rows.c +++ b/src/explorers/Parallel_rows.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/Primal_propagation.c b/src/explorers/Primal_propagation.c index a77fb974..73417fbf 100644 --- a/src/explorers/Primal_propagation.c +++ b/src/explorers/Primal_propagation.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/SimpleReductions.c b/src/explorers/SimpleReductions.c index 22ced65c..1208218f 100644 --- a/src/explorers/SimpleReductions.c +++ b/src/explorers/SimpleReductions.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/Simple_dual_fix.c b/src/explorers/Simple_dual_fix.c index 4f6c6d53..5d62ef73 100644 --- a/src/explorers/Simple_dual_fix.c +++ b/src/explorers/Simple_dual_fix.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/src/explorers/StonCols.c b/src/explorers/StonCols.c index 4cf05e36..954e5ebe 100644 --- a/src/explorers/StonCols.c +++ b/src/explorers/StonCols.c @@ -1,5 +1,5 @@ /* - * Copyright 2025 Daniel Cederberg + * Copyright 2025-2026 Daniel Cederberg * * This file is part of the PSLP project (LP Presolver). * diff --git a/tests/test_postsolve.h b/tests/test_postsolve.h index c4c62d0b..d6eb8b6b 100644 --- a/tests/test_postsolve.h +++ b/tests/test_postsolve.h @@ -22,11 +22,11 @@ static int counter_postsolve = 0; */ static char *test_0_postsolve() { - double Ax[] = {0.1, 0.2, -0.3, -0.1, 0.4, -0.4, 0.1, 0.3, 1, - 0.3, 0.5, -0.6, -0.3, 0.2, -0.2, 0.4, 0.1}; - int Ai[] = {0, 1, 2, 3, 4, 5, 6, 7, 2, 0, 1, 2, 3, 4, 5, 6, 7}; - int Ap[] = {0, 8, 9, 17}; - int nnz = 17; + double Ax[] = {0.1, 0.2, -0.3, -0.1, 0.4, -0.4, 0.1, 0.3, 0, + 1, 0.3, 0.5, -0.6, -0.3, 0.2, -0.2, 0.4, 0.1}; + int Ai[] = {0, 1, 2, 3, 4, 5, 6, 7, 0, 2, 0, 1, 2, 3, 4, 5, 6, 7}; + int Ap[] = {0, 8, 10, 18}; + int nnz = 18; int n_rows = 3; int n_cols = 8;