# Linear Algebra over different fields (\`LinearAlgebra.det\` does not respect the \`+\` and \`\*\` multimethods)

**URL:** <https://discourse.julialang.org/t/linear-algebra-over-different-fields-linearalgebra-det-does-not-respect-the-and-multimethods/26391>\
**Category:** General Usage\
**Tags:** type, linearalgebra, parametric-types\
**Created:** [July 15, 2019, 6:55pm UTC](https://discourse.julialang.org/t/linear-algebra-over-different-fields-linearalgebra-det-does-not-respect-the-and-multimethods/26391 "2019-07-15T18:55:16Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 15, 2019, 7:10pm UTC](https://discourse.julialang.org/t/linear-algebra-over-different-fields-linearalgebra-det-does-not-respect-the-and-multimethods/26391/2 "2019-07-15T19:10:38Z")

</div>

> [@Krastanov](#):
>
> Rather, I was wondering from the point of view of “Julia’s philosophy”, why are `Bool` matrices forced to behave as `Float` matrices?

Julia’s `LinearAlgebra` library doesn’t have built-in functions for exact determinants of integer matrices, which is more appropriate for a number-theory package. Instead, its `det` function works by first computing the LU factorization (i.e. doing Gaussian elimination), which requires conversion to floating point (and is accurate up to roundoff errors).

See also the discussion [in another thread](https://discourse.julialang.org/t/possible-bug-in-determinant-calculation/20323/8).

---

_[View the full topic](https://discourse.julialang.org/t/linear-algebra-over-different-fields-linearalgebra-det-does-not-respect-the-and-multimethods/26391)._
