The result seems different.
PS D:\proj\Simplifier\Simplifier\bin\Release\net8.0> .\Simplifier.exe "7471873370*~(16832296021645948&y) + 373593668516832296021645948 + 3735936685y + 7471922744 - 49374"
Expression: (((((7471873370:i64*(~(16832296021645948:i64&y:i64)))+(3735936685:i6416832296021645948:i64))+(3735936685:i64y:i64))+7471922744:i64)+(49374:i64*-1:i64))
Simplified to: (3735936685:i64*(-9223372036854775808:i64^((9206539740833129859:i64&y:i64)|(-9206539740833129860:i64^(-9206539740833129860:i64&y:i64)))))
with cost: 13 Proving equivalence...
Expressions are equivalent.
This is caused by an algorithm I implemented recently that searches for a single bitwise term fitting the result vector. Improving this case requires implementing some new algorithm for minimizing booleans with constants, which I haven't gotten around to yet.
Short term fix: Disable the algorithm by setting singleCoeff to null in here.