@@ -420,7 +420,8 @@ count_nonzeros(a::AbstractArray) = count(!iszero, a)
420
420
# Here we have a guarantee that they won't, so we can make this identification
421
421
count_nonzeros (a:: SparseVector ) = nnz (a)
422
422
423
- function aag_bareiss! (graph, var_to_diff, mm_orig:: SparseMatrixCLIL , only_linear_algebraic = false , irreducibles = ())
423
+ function aag_bareiss! (graph, var_to_diff, mm_orig:: SparseMatrixCLIL ,
424
+ only_linear_algebraic = false , irreducibles = ())
424
425
mm = copy (mm_orig)
425
426
is_linear_equations = falses (size (AsSubMatrix (mm_orig), 1 ))
426
427
diff_to_var = invview (var_to_diff)
@@ -431,8 +432,11 @@ function aag_bareiss!(graph, var_to_diff, mm_orig::SparseMatrixCLIL, only_linear
431
432
is_linear_equations[e] = all (islowest, 𝑠neighbors (graph, e))
432
433
end
433
434
434
- var_to_eq = let is_linear_equations = is_linear_equations, islowest = islowest, irreducibles = irreducibles
435
- maximal_matching (graph, eq -> is_linear_equations[eq], var -> islowest (var) && ! (var in irreducibles))
435
+ var_to_eq = let is_linear_equations = is_linear_equations, islowest = islowest,
436
+ irreducibles = irreducibles
437
+
438
+ maximal_matching (graph, eq -> is_linear_equations[eq],
439
+ var -> islowest (var) && ! (var in irreducibles))
436
440
end
437
441
is_linear_variables = isa .(var_to_eq, Int)
438
442
solvable_variables = findall (is_linear_variables)
@@ -482,7 +486,8 @@ function lss(mm, pivots, ag)
482
486
end
483
487
end
484
488
485
- function simple_aliases! (ag, graph, var_to_diff, mm_orig, only_linear_algebraic = false , irreducibles = ())
489
+ function simple_aliases! (ag, graph, var_to_diff, mm_orig, only_linear_algebraic = false ,
490
+ irreducibles = ())
486
491
# Let `m = the number of linear equations` and `n = the number of
487
492
# variables`.
488
493
#
@@ -499,7 +504,9 @@ function simple_aliases!(ag, graph, var_to_diff, mm_orig, only_linear_algebraic
499
504
# that the complete system may be larger than the linear subsystem and
500
505
# include variables that do not appear here.
501
506
mm, solvable_variables, (rank1, rank2, pivots) = aag_bareiss! (graph, var_to_diff,
502
- mm_orig, only_linear_algebraic, irreducibles)
507
+ mm_orig,
508
+ only_linear_algebraic,
509
+ irreducibles)
503
510
504
511
# Step 2: Simplify the system using the Bareiss factorization
505
512
ks = keys (ag)
0 commit comments